Snowflake Data Clean Rooms 에서 클라우드 간 자동 복제 관리하기¶
클라우드 간 자동 복제 정보¶
기본 Clean Room 환경에서는 동일한 클라우드 리전에 있는 계정과만 Clean Room을 공유할 수 있습니다. 즉, 공급자와 컨슈머는 동일한 클라우드 리전에 있어야 합니다.
If you want to collaborate with a collaborator whose account is in a different region than you, you must enable Cross-Cloud Auto-Fulfillment for your clean room environment and your clean room as shown on this page.
SELECT CURRENT_REGION(); 을 실행하여 자체 클라우드 리전을 확인할 수 있습니다.
클라우드 간 자동 복제 활성화하기¶
API 또는 UI를 사용하여 클라우드 간 자동 복제를 활성화할 수 있습니다. 그러나 :ref:`리전 간 협업에 대한 제한 사항<label-dcr_LAF_limitations>`을 참고하세요.
전제 조건¶
In order to enable Cross-Cloud Auto-Fulfillment for an account, an org admin for all collaborators must first enable it on the account by calling SYSTEM$ENABLE_GLOBAL_DATA_SHARING_FOR_ACCOUNT.
자동 복제 및 :doc:`자동 복제 권한 관리</collaboration/provider-listings-auto-fulfillment-manage-privileges>`에 대해 자세히 알아보세요.
Enabling Cross-Cloud Auto-Fulfillment in the UI¶
클린룸 관리자는 다음 단계에 따라 모든 신규 및 기존 클린룸에 대해 계정 수준에서 클라우드 간 자동 복제를 활성화합니다.
Enabling Cross-Cloud Auto-Fulfillment in the API¶
UI에서 클라우드 간 자동 복제를 이미 활성화한 경우에도 다음 지침에 따라 API에 클린룸을 만들거나 설치하세요.
Account administrator actions¶
To enable Cross-Cloud Auto-Fulfillment for an account using the API, administrators in both the provider and consumer accounts must run the following SQL code using the ACCOUNTADMIN role. You need to run this only once per account.
USE ROLE ACCOUNTADMIN;
-- Optionally check first to see if LAF is enabled on the account.
CALL samooha_by_snowflake_local_db.library.is_laf_enabled_on_account();
-- If LAF is not enabled, enable it.
CALL samooha_by_snowflake_local_db.library.enable_laf_on_account();
Provider and consumer actions¶
계정에 대해 클라우드 간 자동 복제가 활성화된 후 클린룸을 만들거나 설치할 때 클라우드 간 자동 복제를 활성화하는 방법은 다음과 같습니다.
**공급자**는 ``provider.create_or_update_cleanroom_listing``을 호출하여 일반적인 방식으로 클린룸을 게시합니다.
컨슈머 는 ``consumer.install_cleanroom``을 호출하여 클린룸을 설치합니다. 컨슈머가 공급자와 다른 클라우드 리전에 있는 경우, ``consumer.install_cleanroom``이 클라우드 간 자동 복제의 복제가 설치되고 있다는 메시지와 함께 실패합니다.
**컨슈머**는 성공을 반환할 때까지 ``consumer.install_cleanroom``을 계속 호출합니다. 설치에는 몇 분이 걸립니다.
At this point, the consumer has basic clean room functionality. To support client custom template requests, provider-run analyses, and provider activation, follow this additional step:
The provider calls
provider.mount_request_logs_for_all_consumersuntil the procedure reports success. This means that communication from the consumer to the provider is enabled.
전체 설정 코드 예:
공급자: 공급자는 표준 방식으로 Clean Room을 생성, 공유 및 게시합니다.
USE WAREHOUSE APP_WH; USE ROLE SAMOOHA_APP_ROLE; SET cleanroom_name = 'LAF example'; SET consumer_locator = '<CONSUMER_LOCATOR>'; SET consumer_account_name = '<CONSUMER_DATA_SHARING_ACCOUNT_ID>'; CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.provider.cleanroom_init($cleanroom_name); CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.provider.set_default_release_directive( $cleanroom_name, 'V1_0', '0'); CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.provider.add_consumers( $cleanroom_name, $consumer_locator, $consumer_account_name); CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.provider.create_or_update_cleanroom_listing($cleanroom_name);
컨슈머: 컨슈머가 클린룸을 설치합니다.
USE WAREHOUSE APP_WH; USE ROLE SAMOOHA_APP_ROLE; SET cleanroom_name = 'LAF example'; SET provider_locator = '<PROVIDER_LOCATOR>'; -- Initial call starts the process and returns a cross-cloud/region replication failure. -- Continue to call this procedure until it returns a success message. CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.consumer.install_cleanroom( $cleanroom_name, $provider_locator); -- Continue with standard clean room configuration and use. -- The consumer can run analyses, but client custom templates, provider run, and provider analysis -- aren't supported until the provider takes the action shown in the next step. ...
Provider: After the consumer installs the clean room, the provider must mount the requests share to enable request-based actions between the provider and consumer. Request-based actions include provider requests to run an analysis and consumer requests to add a template to the clean room.
-- Call mount_request_logs_for_all_consumers until it reports success. provider.mount_request_logs_for_all_consumers($cleanroom_name);
이제 전체 공급자/컨슈머 기능을 사용할 수 있습니다.
리전 간 계정의 새로 고침 빈도¶
서로 다른 클라우드 리전에 있을 때 공급자와 컨슈머 간의 요청 및 데이터에는 복제 빈도 설정이 적용됩니다.
Requests and data from provider to consumer¶
This includes all data and requests from the provider to the consumer, such as creating or updating a clean room, changing provider data, requests for permission (such as provider-run analyses), and approvals for requests (such as consumer templates).
:ref:`dcr_provider_set_laf_dcr_refresh_schedule`을 호출하여 공급자에서 컨슈머로의 새로 고침 빈도로 변경할 수 있습니다.
데이터 |
Default refresh rate |
|---|---|
다음과 같은 공급자 클린룸 데이터:
|
|
Requests and data from consumer to provider¶
The following table shows the default refresh frequency for data and requests from the consumer to the provider.
You can control the consumer to provider refresh rate for each clean room.
데이터 |
Default refresh rate |
|---|---|
다음과 같은 요청, 승인, 변경 사항:
|
|
공급자 활성화 데이터: |
|
리전 간 공동 작업과 관련된 비용¶
다른 리전에 있는 공동 작업자의 경우 추가 비용이 발생합니다. 이러한 비용이 발생하는 방식에 대한 자세한 내용은 자동 복제 비용 섹션을 참조하십시오.
리전 간 공동 작업에 대한 제한 사항¶
리전 간 협업에는 다음과 같은 제한이 있습니다.
When using the clean rooms UI, you can enable cross-region collaboration with other UI users in the same UI gateway region. For example, accounts in AWS US East (Ohio) can share with accounts in AWS US West (Oregon) because they have the same UI gateway region (AwS US East (N. Virginia). Accounts in AWS US East (Ohio) can’t collaborate with accounts on AWS Canada, because they don’t share a gateway region. However, any account can be configured for cross-region collaboration when using the API.
공급자는 클린룸에서 차등 개인정보 보호를 사용할 수 없습니다.
공동 작업자는 클린룸의 외부 테이블과 Iceberg 테이블을 연결할 수 없습니다.
컨슈머는 여러 공급자에 대한 분석을 실행할 수 없습니다.
계정은 발생할 수 있는 복제 유형 충돌로 인해 클라우드 간 협업 시나리오에서 공급자와 컨슈머 역할을 모두 수행할 수는 없습니다.
리전 간 협업 활성화 시 추가 고려 사항 섹션을 참조하세요.