중복과 세분화 사용 사례를 알아봐요
중복과 세분화 사용 사례를 알아봐요
기능 — 일반 공개
현재 이 지역들에서 사용할 수 있어요.
정부 및 VPS 배포 환경에서는 사용할 수 없어요.
Snowflake는 오버랩 및 세그멘테이션 템플릿을 제공하여 모든 협업자가 데이터에 어떤 엔터티가 존재하는지 파악하고, 해당 엔터티에 대한 집계 정보를 보여줄 수 있게 해요.
이 템플릿을 사용하면 두 당사자가 각각 하나 이상의 테이블을 clean room에 추가해요. 이 테이블의 엔터티는 사용자가 지정한 조인 컬럼을 기준으로 조인되거나 식별돼요. 또한 오버랩 수는 특정 세그멘테이션 속성별로 세분화하고 필터링할 수 있어요. 이를 통해 당사자들은 자신의 데이터셋 간 오버랩에 대한 인사이트를 얻을 수 있으며, 이는 협업의 가치를 판단하고 clean room에서 다른 다운스트림 사용 사례를 진행하는 데 도움이 돼요. 컨슈머는 조인할 컬럼과 표시할 컬럼을 지정해요. 프로젝션되는 모든 컬럼은 그룹화되거나 집계 함수로 집계되어야 해요. 엔터티를 식별하는 컬럼은 쿼리 결과에서 차단되며, clean room이 차등 프라이버시(differential privacy)를 적용하여 특정 엔터티에 대한 정보를 추가로 보호해요. clean room 생성자가 활성화한 경우, 결과를 제3자에게 활성화할 수 있어요 (clean rooms UI에서만 가능).
예를 들어, 광고주는 퍼블리셔의 인벤토리에 대해 오버랩 분석을 수행하여 해당 퍼블리셔에서 미디어를 구매하는 가치를 파악하는 데 도움을 받을 수 있어요. 그런 다음 광고주는 원하는 오디언스의 ID를 타게팅 목적으로 퍼블리셔에게 다시 활성화해요.
오버랩 및 세그멘테이션 템플릿은 clean rooms UI와 코드에서 모두 사용할 수 있어요. clean rooms UI는 아이덴티티 제공자(identity provider) 사용과 제3자 파트너에 대한 활성화를 쉽게 할 수 있게 해주며, 코드 사용은 프로바이더와 컨슈머 모두에서 여러 테이블을 사용할 수 있게 해줘요.
팁
Audience Overlap 템플릿에서 차등 프라이버시를 활성화한 경우 오버랩 통계를 계산하지 마세요. 그렇게 하면 사용자의 프라이버시 예산 대부분을 소모하여 분석을 실행할 예산이 거의 또는 전혀 남지 않게 돼요.
출처: 문서
본문
Clean rooms UI 사용법
Clean rooms UI에서는 Audience Overlap & Segmentation이라는 준비된 템플릿을 통해 이 사용 사례를 지원해요. 이 템플릿은 마케팅 및 광고 사용 사례를 대상으로 하지만, 모든 산업에서 중복 및 세분화 사용 사례에 사용할 수 있어요. 아래 단계에 따라 이 템플릿을 만들고 사용하는 방법을 알아보세요.
참고
Clean rooms UI에서 이 분석을 실행할 때, 중복 비율은 누가 분석을 실행하는지에 따라 달라질 수 있어요. 이는 비율이 (내 테이블의 일치 ID 수)/(내 테이블의 전체 ID 수)로 계산되기 때문이에요. 예를 들어 협력자 A가 100개의 ID를 가지고 있고 B가 500개의 ID를 가지고 있다고 가정해요. 두 테이블 모두 50개의 ID가 겹친다면, A는 50% 중복을 보게 되지만 B는 10% 중복만 보게 돼요.
또한, 협력자 A의 데이터에 있는 동일한 ID가 협력자 B의 데이터에 있는 여러 ID와 일치하는 경우에도 중복 비율은 누가 분석을 실행하는지에 따라 달라져요.
웹 템플릿 기능:
-
클린 룸 관리자가 구성한 경우 원클릭 활성화가 가능해요.
-
클린 룸 관리자가 구성한 경우 ID 공급자를 원클릭으로 사용할 수 있어요.
-
공급자 실행 분석을 지원해요.
-
양측 모두 데이터를 가져오고 조인, 프로젝션, 활성화할 수 있는 열을 지정할 수 있어요.
-
사용 가능한 테이블에서 하나의 소비자 테이블과 하나의 공급자 테이블에 대한 중복 쿼리를 실행할 수 있어요.
-
구성 가능한 차등 프라이버시를 제공해요.
참고
Clean rooms UI에서 클린 룸을 사용하는 전체 엔드투엔드 과정을 확인하려면 웹 인터페이스 튜토리얼을 살펴보세요. 이 템플릿은 이 튜토리얼에서도 다루고 있어요.
1단계: 공급자가 클린 룸 만들기
공급자가 Audience Overlap & Segmentation 템플릿으로 클린 룸을 만들고 구성하는 방법은 다음과 같아요:
Clean rooms UI에 로그인하고 새 클린 룸 만들기를 진행해요.
Add Data에서 다음을 수행해요:
-
클린 룸에 연결(가져오기)할 테이블을 선택해요. 필요한 테이블이 목록에 없으면 클린 룸 관리자에게 문의해요.
Specify Join Policies에서 다음을 수행해요:
-
협력자가 내 테이블에서 조인할 수 있는 열을 선택해요. 조인 가능한 열은 분석에서 세분화, 필터링, 그룹화에 표시하거나 사용할 수 없다는 점을 기억하세요.
-
여러 식별자를 가질 수 있는 엔터티를 해결하는 데 도움이 되는 ID 공급자를 사용하려면(예: 서로 다른 데이터베이스에 여러 이메일 계정을 가진 한 개인) Identity Hub에서 ID 공급자를 선택해요.
Configure Analysis & Query에서 다음을 수행해요:
분석 유형으로 Audience Overlap & Segmentation을 선택해요. (클린 룸에 여러 템플릿을 선택할 수 있어요.) 각 템플릿의 구성 옵션이 페이지에 표시돼요.
Tables에서 앞서 연결한 테이블 중 이 템플릿과 함께 이 클린 룸에서 소비자가 사용할 수 있게 할 테이블을 선택해요.
Segmentation & Attribute Columns를 사용하여 쿼리 결과에 표시할 열을 선택해요. 협력자는 선택한 열을 표시하고, 필터링하고, 그룹화할 수 있어요. 클린 룸에서 Snowflake Activation이 활성화된 경우 협력자는 이러한 속성 값을 활성화할 수 있어요. 여기에 열이 표시되지 않는다면 조인 가능으로 표시했기 때문일 가능성이 높아요. 열은 조인 가능하면서 동시에 쿼리 결과에 표시될 수는 없어요.
Allow categorical value previews during filtering은 미리보기가 실제 값을 표시할지 여부를 지정해요. 열에 고유 값이 20개 미만인 경우 기본적으로 활성화되지만, PII를 보호하기 위해 고유 값이 20개를 초과하는 경우 기본적으로 비활성화돼요.
결과 데이터에 대한 활성화를 활성화, 구성 또는 비활성화하려면 Activation Settings 섹션을 검토해요:
-
활성화 사용 사례에서 사용할 수 있어야 하는 ID Columns을 선택해요. 기본적으로 조인 정책 열이 자동 선택돼요.
-
Allow non-overlap activation을 활성화하면 협력자의 데이터 세트에서 일치하는 ID 없이 내 데이터 세트의 ID를 활성화할 수 있어요. 예를 들어 100개의 ID를 가져와 협력자와 중복 분석을 실행했는데 25개의 ID만 겹쳤다면, 비중복 활성화는 내 데이터 세트에서 일치하지 않는 75개의 ID를 활성화해요.
-
Enabled Partners를 검토하여 선호하는 활성화 대상만 클린 룸에서 활성화되도록 해요. 활성화 대상을 변경해야 한다면 클린 룸 관리자에게 문의해요.
필요에 따라 기본 Privacy Settings를 업데이트해요:
-
Threshold Value는 기본적으로 활성화되어 5로 설정돼요. 이는 조인 정책 열의 고유 개수가 이 임계값보다 낮은 그룹에 대해 결과가 표시되지 않도록 해요.
-
Differential Privacy는 기본적으로 비활성화되어 있어요. 활성화하면 결과에 노이즈를 추가하고 일일 쿼리 수를 제한하여 잠재적인 차분 공격으로부터 보호해요. Snowflake Data Clean Rooms의 차등 프라이버시에 대해 자세히 알아보고 이 기능을 활성화하는 비용을 이해하세요.
Share clean rooms에서 다음을 수행해요:
- Select collaborator 메뉴를 펼쳐 클린 룸에 협력자를 추가해요. 협력자는 다음에 설명된 대로 내 클린 룸에 참여하고 사용하도록 초대하는 이메일을 받게 돼요. 페이지의 협력자 목록에는 내 계정을 포함하여 이 클린 룸에 액세스할 수 있는 모든 계정이 표시돼요.
- 협력자 옆에 있는 Enable run analysis and query를 선택하여 해당 계정이 clean room에서 템플릿을 실행할 수 있는지 제어하세요. 기본적으로 자신의 계정은 clean room에서 분석을 실행할 수 없습니다. 즉, provider-run analyses는 기본적으로 비활성화되어 있습니다. 기본적으로 소비자는 clean room에서 모든 템플릿을 실행할 수 있습니다.
2단계: 소비자가 clean room에 참여하기
다음은 Audience Overlap & Segmentation 분석 템플릿이 포함된 clean room에 소비자가 참여하고 구성하는 방법입니다.
Sign in to the clean rooms UI and join the clean room.
Add Data에서 다음을 수행하세요.
- clean room에 연결(가져오기)할 테이블을 선택하세요. 필요한 테이블이 목록에 없으면 clean room 관리자에게 문의하세요.
Specify Join Policies에서 다음을 수행하세요.
-
데이터에서 조인 가능한 열이 공급자 데이터의 조인 가능한 열에 매핑되는 방식을 결정하세요. 각 실행 중에 이러한 열 중 어떤 열을 조인할지 지정하게 됩니다.
-
여러 식별자를 가질 수 있는 엔터티를 해결하는 데 도움이 되는 ID 공급자를 사용하려면(예: 서로 다른 데이터베이스에 여러 이메일 계정이 있는 한 개인) Identity Hub에서 ID 공급자를 선택하세요.
Configure Analysis & Query 단계에서 다음을 수행하세요.
-
해당 템플릿의 구성 옵션을 표시하려면 Audience Overlap & Segmentation 분석을 선택하세요.
-
Tables 드롭다운 메뉴에서 이 분석에 사용할 테이블을 선택하세요.
-
Segmentation & Attribute Columns를 사용하여 쿼리 결과에 표시할 열을 선택하세요. 이러한 열은 clean room에서 Snowflake Activation이 활성화된 경우에도 활성화할 수 있습니다. 여기에 나열된 열이 보이지 않는다면 해당 열을 조인 가능으로 표시했기 때문일 수 있습니다. 열은 조인 가능하면서 동시에 쿼리 결과에 표시될 수는 없습니다.
-
활성화 사용 사례 중에 사용할 수 있어야 하는 ID Columns를 선택하세요. 기본적으로 조인 정책 열이 자동 선택됩니다.
-
선택적으로 Allow activation for clean room provider를 활성화하여 clean room 공급자가 지원되는 활성화 대상으로 활성화할 수 있도록 허용하세요. 이 옵션은 clean room에서 provider-run이 활성화된 경우에만 표시됩니다. 이 옵션을 활성화하면 행 수준 데이터가 공급자의 계정으로 다시 활성화될 수 있습니다. 또한 소비자는 공급자 쿼리 및 활성화를 실행할 때 컴퓨팅 비용을 부담하며, 소비자는 공급자 작업을 허용하는 데 동의해야 합니다.
-
선호하는 활성화 대상이 clean room에서 활성화되어 있는지 확인하려면 Enabled Partners를 검토하세요. 활성화 대상을 변경해야 하는 경우 clean room 공급자에게 문의하세요.
Finish를 클릭하여 결과를 저장하세요. 분석을 실행하려면 다음 섹션을 참조하세요.
3단계: 소비자가 분석 실행하기
참고
기본 구성에서는 소비자만 이 템플릿을 사용하여 분석을 실행할 수 있습니다. 이 템플릿으로 provider-run 분석을 활성화하려면 공급자가 clean room 구성에서 Share clean rooms 탭을 열고 자신의 계정 이름 옆에 있는 Enable run analysis and query를 선택해야 합니다.
공급자와 소비자가 오디언스 중복 및 세분화를 위해 clean room을 구성한 후에는 분석을 실행할 권한이 있는 어느 쪽이든 다음과 같이 분석을 실행할 수 있습니다.
clean rooms UI에서 Clean rooms로 이동하세요.
오디언스 중복을 구성한 clean room에 대해 Run을 선택한 다음 Audience Overlap & Segmentation > Proceed를 선택하세요. (또는 Analyses & Queries 페이지로 이동하여 + New Analysis & Query를 선택하고 Audience Overlap & Segmentation 유형을 선택한 다음 해당 분석 유형이 구성된 clean room을 선택하세요.)
Query Configurations section에서 실행 세부 정보를 설정하세요:
-
My tables - 협력자의 테이블에 조인할 테이블을 선택하세요.
-
Collaborator table - 내 테이블에 조인할 협력자 테이블을 선택하세요.
-
My join columns - 테이블 간에 조인할 모든 열을 선택하세요.
-
User segmentation - 선택적으로 그룹화 열을 선택하세요.
-
Filters - 선택적으로 설정 중에 세그먼테이션 및 속성 열로 지정된 열에 하나 이상의 필터를 제공하세요.
-
Privacy settings - 이 쿼리는 차등 프라이버시와 그룹당 최소 행 수를 구현합니다. 여기에서 사용된 차등 프라이버시와 남은 차등 프라이버시, 최소 그룹 크기를 확인할 수 있습니다.
소비자로서 분석을 수행하는 경우 warehouse size를 변경하여 더 큰 웨어하우스를 선택하면 쿼리 시간을 개선하고, 더 작은 웨어하우스를 선택하면 비용을 절감할 수 있습니다. 공급자로서 분석을 수행할 때는 웨어하우스 선택을 사용할 수 없지만, 자동 확장이 쿼리 시간을 최적화하려고 시도합니다.
Run을 선택하세요. 새 쿼리인 경우 다음을 수행하세요:
-
분석 및 쿼리의 이름을 지정하세요.
Save를 선택하여 실행을 시작하거나 예약하세요. 각 실행을 완료하는 데 시간이 걸릴 수 있습니다. clean rooms UI의 Analysis & Queries 페이지에서 분석 상태 또는 결과를 확인할 수 있습니다.
코드 사용
오버랩 및 세그멘테이션 예제를 SQL 코드로 사용하는 방법을 보여주는 샘플 노트북을 다운로드하고 실행할 수 있어요. 이 예제는 Snowsight에서 업로드하고 실행할 수 있어요.
이 노트북은 ID 공급자 사용 방법, 타사 공급자로의 활성화, 공급자 실행 분석을 보여주지 않아요. 이러한 작업을 코드로 수행하는 방법을 보려면 연결된 주제를 참조하세요.
사전 요구 사항
같은 조직에 Snowflake Data Clean Rooms가 설치된 두 개의 계정이 있어야 해요. 한 계정은 공급자(provider)로, 다른 계정은 소비자(consumer)로 사용하세요.
코드 예제 설치 및 실행
공급자와 소비자 계정 모두에 노트북을 설치하세요. 노트북을 업로드하려면 다음을 수행하세요:
-
Snowsight에 로그인하세요.
-
탐색 메뉴에서 프로젝트 » 노트북을 선택하세요.
-
+ 노트북 » .ipynb 파일 가져오기를 선택하세요.
-
다운로드한 .ipynb 파일을 선택하세요.
-
원하는 대로 파일 이름을 지정하고 데이터베이스와 스키마를 선택하세요.
-
기본 웨어하우스
APP_WH를 유지하세요. -
만들기를 선택하세요.
-
clean room을 만들려면 공급자 계정에서 노트북을 열고 공급자 부분을 완료하세요.
-
소비자 계정에서 노트북을 열고 소비자 부분을 완료하여 clean room을 설치 및 구성하고 템플릿을 실행하세요.