Snowflake Data Clean Rooms: 설치 세부 정보

이 항목에서는 클린룸 환경을 설치할 때 계정에 생성되는 오브젝트에 대한 정보를 제공합니다.

Snowflake Native App

Snowflake Data Clean Rooms 는 다음 Snowflake Native App 을 설치합니다.

SAMOOHA_BY_SNOWFLAKE

이 Snowflake Native App 은 Snowflake Data Clean Rooms를 지원합니다. 여기에는 클린룸을 생성하고 관리하는 데 사용되는 핵심 기능과 애플리케이션 논리가 모두 포함되어 있습니다.

이 앱의 스키마는 다음과 같습니다.

ADMIN

이 스키마에는 애플리케이션 관리에 필요한 테이블이나 뷰가 포함되어 있습니다. 이를 사용하면 애플리케이션 버전, 패치, 배포를 추적할 수 있습니다. 주요 세부 정보는 다음과 같습니다.

  • 버전 정보(숫자)

  • 적용된 패치(버전, 명령)

APP SCHEMA

이 스키마에는 모든 클린룸 흐름을 원활하게 하는 데 필요한 함수과 프로시저가 포함되어 있습니다. 주요 세부 정보는 다음과 같습니다.

  • 함수를 암호화하고 암호 해독합니다.

  • 개발자 APIs 및 웹 앱에서 클린룸을 생성, 설치 및 작업하는 데 사용하는 클린룸 프로시저입니다.

TEMPLATES

이 스키마에는 개발자 APIs 또는 웹 앱을 사용하여 분석을 실행하는 데 사용할 수 있는 표준 SQL Jinja 템플릿이 포함되어 있습니다.

이러한 사전 구축된 템플릿은 Snowflake Data Clean Rooms 내에서 안전한 데이터 협업을 위해 바로 사용할 수 있는 SQL 쿼리를 제공합니다. Jinja 템플릿을 활용해 사용자 지정이 가능하며, 이를 통해 특정 데이터 공유 시나리오에 맞춰 쿼리를 맞춤화할 수 있습니다.

애플리케이션 패키지

Snowflake Data Clean Rooms 은 다음 애플리케이션 패키지를 설치합니다.

SAMOOHA_CLEANROOM_*

이 애플리케이션 패키지는 공급자 계정에만 설치됩니다. 여기에는 공급자가 생성한 클린룸의 모든 핵심 애플리케이션 논리가 포함되어 있습니다. 또한 여기에는 클린룸과 데이터를 공유하는 데 사용되는 보안 뷰와 클린룸 상태를 저장하는 여러 테이블이 포함되어 있습니다. 여기에는 컨슈머의 현재 차등 개인정보 보호 예산, 열 및 조인 정책, 클린룸에 연결된 테이블 이름을 기록한 테이블이 포함됩니다.

데이터베이스

Snowflake Data Clean Rooms 은 다음 데이터베이스를 설치합니다.

SAMOOHA_BY_SNOWFLAKE_LOCAL_DB

이 데이터베이스는 Snowflake 설치 과정 중에 웹 앱에 의해 생성됩니다. 이는 사용자 계정에 로컬입니다. 애플리케이션은 아니지만, 애플리케이션 논리를 포함하고 있습니다.

이는 다음의 두 가지 구성 요소로 구성됩니다.

  1. 사용자와 웹 앱이 클린룸을 만들고 관리하는 데 사용하는 개발자 APIs입니다.

  2. ID 확인과 같은 흐름 중에 PUBLIC 스키마에 저장되는 전적으로 사용자가 소유하는 중간 데이터 세트입니다. 예를 들어, LiveRamp의 분해능 및 트랜스코딩 프로세스의 출력 테이블은 PUBLIC 스키마에 저장되고 웹 앱에 의해 클린룸에 연결되는 뷰에 조인됩니다.

데이터베이스에는 다음과 같은 스키마가 있습니다.

ADMIN

이 스키마에는 다음과 같이 계정과 관련된 특정 클린룸 기능을 작동하는 데 필요한 정보가 포함되어 있습니다.

  • 여러 리전이나 클라우드 플랫폼에서 협업하기 위해 클라우드 간 자동 복제를 사용합니다.

  • 개발자 APIs에서 웹 앱으로 클린룸을 등록하려면 클린룸 메타데이터 업데이트가 필요합니다.

  • Snowflake 계정으로 웹 앱의 기능과 관련된 현재 프로시저의 버전 관리.

  • 공동 작업자로부터 다시 공유되는 클린룸 공유 세트의 변경 사항을 수신하고 변경 사항에 따라 필요에 따라 클린룸을 활성화/비활성화할 수 있는 작업 및 스트림입니다.

CONSUMER/CONSUMER_INIT

이 스키마에는 계정과 관련된 클린룸 설치 또는 컨슈머 기능을 작동하는 데 필요한 프로시저가 포함되어 있습니다. 예:

  • 클라우드 간 자동 복제 클린룸을 요청하려면 공유 클린룸 목록 세부 정보가 필요합니다.

  • 조인/열 정책을 사용하고 클린룸에서 데이터베이스를 등록하는 것과 관련된 기능입니다.

  • 클린룸 설치 및 편집, 분석 실행, 추가된 템플릿 뷰에 대한 지원이 제공됩니다.

ID_HUB

이 스키마에는 ID 허브와 관련된 프로시저와 중간 테이블이 포함되어 있습니다.

INFORMATION_SCHEMA

모든 Snowflake 데이터베이스와 마찬가지로 이 데이터베이스에는 계정에서 만든 오브젝트에 대한 광범위한 메타데이터 정보를 제공하는 시스템 정의 뷰와 테이블 함수 집합으로 구성된 INFORMATION_SCHEMA 스키마(“데이터 사전”)가 포함되어 있습니다.

LIBRARY

이 스키마에는 공급자와 컨슈머 모두에게 적용 가능한 클린룸 커넥터와 기능을 활성화하는 데 필요한 프로시저가 포함되어 있습니다. 예:

  • ID 허브 및 외부 테이블과의 통합을 용이하게 하는 Ads 커넥터 프로시저를 설정합니다.

  • 클라우드 간 자동 실행 활성화 또는 비활성화를 제어하기 위해 데이터베이스 프로시저를 등록합니다.

  • 패치를 적용하고, 데이터베이스 등록을 취소하고, 클린룸 레코드를 업데이트합니다.

PROVIDER

이 스키마에는 활성화와 관련된 데이터 또는 정보(공급자 활성화를 용이하게 하는 스트림 및 프로시저), 저장된 분석 보고서, Snowflake Data Clean Rooms 계정에 구성된 커넥터와 관련된 메타 정보, 계정에서 만든 클린룸 레코드가 포함되어 있습니다.

PUBLIC

이 스키마에는 사용자와 웹 앱이 클린룸을 만들고 관리하는 데 사용하는 개발자 APIs가 포함되어 있습니다. 또한 ID 확인과 같은 흐름 중에 PUBLIC 스키마에 저장되는 전적으로 사용자 소유의 중간 데이터 세트도 포함되어 있습니다. 예를 들어, LiveRamp의 분해능 및 트랜스코딩 프로세스의 출력 테이블은 PUBLIC 스키마에 저장되고 웹 앱에 의해 클린룸에 연결되는 뷰에 조인됩니다.

이 스키마에는 다음과 같은 테이블이 있습니다.

  • CLEANROOM_RECORD: 이 테이블에는 클린룸의 상태(생성됨, 삭제됨)와 함께 사용자 및 마지막 업데이트 타임스탬프가 포함되어 있습니다. 업데이트가 웹 앱에서 수행된 경우 사용자는 서비스 계정 사용자입니다. Snowsight 에서 개발자 APIs를 사용하여 업데이트를 수행한 경우 사용자는 API를 호출한 실제 사용자입니다. 이 테이블에서는 클린룸 데이터베이스 이름을 사용자 지정할 수 있습니다.

  • CONNECTOR_CONFIGURATION: 이 테이블은 계정에 구성된 커넥터 목록입니다.

  • REPORTS: 이 테이블에는 컨슈머가 웹앱에 저장한 보고서 목록이 포함되어 있습니다. 표준 보고서의 최상위 결과는 테이블에 저장됩니다.

  • HORIZONTAL_ANALYSIS_<보고서 ID>: 웹 앱에서 실행된 SQL 쿼리 템플릿 및 사용자 지정 템플릿으로 실행된 분석의 출력입니다.

데이터베이스에는 3개의 공유가 생성됩니다.

  • SAMOOHA_INTERNAL_GOVERNANCE_SUMMARY SHARE_NAV2: 이 공유에는 PUBLIC 스키마의 GOVERNACE_SUMMARY 및 ACTIVATION 테이블에 대한 뷰가 포함되어 있습니다. 이는 이 계정으로 클린룸을 설치한 모든 공급자와 공유되며, 거버넌스 정보와 공급자 활성화를 다시 공유하는 데 사용됩니다.

  • SAMOOHA_INTERNAL_LOGS_SHARE_NAV2: 이 공유는 LOG_EVENTS 테이블에 위치하며, 주로 서드 파티 서드 파티 앱을 사용하는 경우 ID 해결 프로시저가 어떻게 진행되고 있는지에 대한 로그를 Snowflake에 공유하는 데 사용됩니다. 어떠한 PII 또는 데이터도 다시 공유되지 않으며, 트랜스코딩/해제에 사용된 서드 파티 앱 APIs의 성공/실패 여부만 공유됩니다.

  • SAMOOHA_INTERNAL_PROVIDER_METADATA_NAV2: 이 공유는 개발자 APIs에서 웹 앱 등록 요청에 사용되는 ADMIN.METADATA_UPDATE_REQUESTS 테이블과 관리 계정에서 사용량을 기록하기 위해서만 사용되는 ADMIN.RESOURCE_MONITOR_USAGE 테이블 두 개에 있습니다.

SAMOOHA_CLEANROOM_REQUESTS_*

이는 공급자 측에서는 데이터베이스이고 컨슈머 측에서는 공유입니다. 이는 컨슈머용 클린룸 설치 과정의 일부로 컨슈머가 클린룸 공급자에게 다시 보내는 양에 해당합니다. 이 데이터베이스에는 컨슈머가 클린룸에 대해 제기한 모든 요청에 대한 정보가 포함되어 있으며 컨슈머의 차등 개인정보 보호 예산 사용을 추적하는 데 사용됩니다.

SAMOOHA_CLEANROOM_CONSUMER_*

이 데이터베이스는 컨슈머 계정에만 설치됩니다. 컨슈머 데이터의 보안된 뷰와 같은 오브젝트를 클린룸에 공유하거나, 적용되는 경우 컨슈머 열/조인 정책을 공유하는 데 사용됩니다. 여기에 있는 테이블은 다음과 같습니다.

  • SAMOOHA_CLEANROOM_CONSUMER_<클린룸>.SHARED.REQUESTS. 이 테이블은 컨슈머에게 정확히 어떤 쿼리를 실행하려고 시도했는지 보여줍니다(컨슈머 SQL 템플릿의 출력 쿼리는 PROPOSED_QUERY).

SAMOOHA_SAMPLE_DATABASE

이 데이터베이스에는 클린룸에서 분석을 실행하고 애플리케이션에 익숙해지는 데 사용할 수 있는 샘플 데이터 세트가 포함되어 있습니다.

작업

Snowflake Data Clean Rooms 은 다음 작업을 설치합니다.

EXPECTED_VERSION_TASK

이 작업은 새 버전이 출시되면 Snowflake Data Clean Rooms용 Snowflake Native App 을 자동으로 업그레이드합니다. 이는 SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.ADMIN 스키마에 있습니다.

클린룸 환경을 자동으로 업데이트하도록 작업을 활성화하려면 개발자 API를 사용하여 enable_local_db_auto_upgrades 명령을 실행합니다. 예를 들어, Snowsight 를 사용하여 다음을 실행합니다.

CALL samooha_by_snowflake_local_db.library.enable_local_db_auto_upgrades();
Copy

웨어하우스

Snowflake Data Clean Rooms 은 다음 웨어하우스를 설치합니다.

웨어하우스 이름

참고

APP_WH

Snowflake Data Clean Rooms 은 이 웨어하우스를 사용하여 웨어하우스를 선택할 수 없는 작업을 실행합니다. 계정에 APP_WH가 아직 존재하지 않으면 Snowflake가 XS 웨어하우스로 생성합니다.

DCR_WH_SMALL

일반 SMALL 웨어하우스

DCR_WH_Medium

일반 MEDIUM 웨어하우스

DCR_WH_Large

일반 LARGE 웨어하우스

DCR_WH_XLarge

일반 XLARGE 웨어하우스

DCR_WH_2XLARGE

일반 XXLARGE 웨어하우스

DCR_WH_4XLarge

일반 X4LARGE 웨어하우스

DCR_WH_OPT_XLarge

Snowpark에 최적화된 XLARGE 웨어하우스

DCR_WH_OPT_2XLarge

Snowpark에 최적화된 XXLARGE 웨어하우스

DCR_WH_OPT_4XLarge

Snowpark에 최적화된 X4LARGE 웨어하우스

PROVIDER_RUN_<cleanroom_identifier>

공급자가 실행한 분석을 실행하는 컨슈머 계정의 웨어하우스입니다.