공급자 실행 분석

기본 Clean Room 구성에서는 컨슈머만 Clean Room에서 분석을 실행할 수 있습니다. 그러나 공급자는 특정 Clean Room에서 컨슈머 데이터를 사용하여 템플릿을 실행할 수 있는 권한을 컨슈머에게 요청할 수 있습니다. 공급자 실행 분석은 Clean Rooms UI 또는 코드를 사용하여 활성화하고 실행할 수 있습니다.

지원되는 템플릿

공급자 실행 분석은 지정된 Clean Room 내의 템플릿 수준에서 활성화됩니다. 다음 템플릿은 공급자 실행 분석을 지원합니다.

  • 중첩 및 세분화 분석

  • SQL Query(UI 전용)

  • 사용자 지정 템플릿(API 전용)

청구 세부 정보

Clean Room에서 모든 공급자 실행 분석에 대한 비용은 컨슈머에게 청구됩니다. 공급자의 분석으로 인한 추가 비용 발생을 막으려면 컨슈머는 Clean Room을 제거해야 합니다.

컨슈머는 다음 쿼리를 실행하여 이전 일수를 음수로 지정하여 공급자가 지난 N 일 동안 소비한 크레딧 수를 추정할 수 있습니다.

-- Estimate the number of credits consumed in the past 5 days.
SELECT * FROM TABLE(SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.LIBRARY.PRA_CONSUMPTION_UDTF(-5));
Copy

웨어하우스 크기 선택하기

Clean Rooms는 데이터 세트 크기에 따라 자동 확장 로직을 사용하여 분석을 위한 웨어하우스를 선택합니다. 그러나 공급자는 컨슈머가 허용하는 크기 및 유형 목록에서 웨어하우스 크기를 명시적으로 선택할 수 있습니다. 공급자는 다음과 같이 웨어하우스 크기를 선택합니다.

  1. 컨슈머는 consumer.enable_templates_for_provider_run 을 호출하여 어떤 템플릿에 어떤 웨어하우스 크기와 유형을 사용할 수 있는지 지정합니다.

  2. 공급자는 provider.view_warehouse_sizes_for_template 을 호출하여 공급자 실행 분석에 허용되는 웨어하우스 크기와 유형을 확인합니다.

  3. 공급자는 분석 요청에 사용할 크기와 유형 조합을 지정합니다(provider.submit_analysis_request).

공급자는 컨슈머가 명시적으로 나열한 웨어하우스 크기와 유형만 요청할 수 있습니다.

컨슈머

CALL samooha_by_snowflake_local_db.CONSUMER.enable_templates_for_provider_run(
  $cleanroom_name,
  [$template1, $template2],
  TRUE,
  {
    $template1: {'warehouse_type': 'STANDARD', 'warehouse_size': ['MEDIUM', 'LARGE']},
    $template1: {'warehouse_type': 'SNOWPARK-OPTIMIZED', 'warehouse_size': ['MEDIUM', 'XLARGE']},
    $template2: {'warehouse_type': 'STANDARD', 'warehouse_size': ['MEDIUM', 'XLARGE']}
  });
Copy

공급자

CALL samooha_by_snowflake_local_db.PROVIDER.VIEW_WAREHOUSE_SIZES_FOR_TEMPLATE($cleanroom_name, $template_name, $consumer_account_loc);
CALL samooha_by_snowflake_local_db.provider.submit_analysis_request(
  $cleanroom_name,
  $consumer_locator_id,
  $template1,
  ['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS'],
  ['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS'],
  object_construct(
    'dimensions', ['c.REGION_CODE'],
    'measure_type', ['AVG'],
    'measure_column', ['c.DAYS_ACTIVE'],
    'warehouse_type', 'STANDARD',        -- If this type and size pair were not listed by view_warehouse_sizes_for_template,
    'warehouse_size', 'LARGE'            -- the request will automatically fail.
  ));
Copy

공급자 실행 분석 구현하기

컨슈머와 공급자가 서로 다른 클라우드 리전에 있는 경우 두 계정과 두 Clean Rooms 모두에 대해 클라우드 간 자동 복제 를 활성화해야 합니다.

Clean Room에서 쿼리를 실행할 수 있는 권한은 Clean Room의 구성 흐름에 있는 Share clean room 패널의 Enable run analysis & query 토글을 사용하여 Clean Rooms UI 에서 관리합니다. 공급자 실행 분석을 활성화 또는 비활성화하려면 Clean Room 공급자가 해당 패널에서 자신의 계정 옆에 있는 토글을 활성화합니다. 이 토글은 Clean Room을 만든 후에는 변경할 수 없으며, 특정 계정이 게시된 Clean Room에서 쿼리를 실행할 수 있는 권한을 변경하려면 Clean Room을 삭제하고 새 Clean Room을 만들어야 합니다.

새 Clean Room에서 공급자 실행 분석을 활성화하는 단계는 다음과 같습니다.

  1. 공급자는 지원되는 템플릿 중 하나를 사용하여 Clean Room을 생성하고 구성합니다.

  2. Clean Room 구성의 Share Clean Room 단계에서 계정 옆의 Enable run analysis & query 를 설정하여 이 Clean Room에서 공급자 분석을 지원하는 템플릿을 실행할 수 있도록 합니다.

  3. 컨슈머가 Clean Room에 참여하면 참여하기 전에 해당 Clean Room에 대해 공급자 실행 분석이 활성화되어 있다는 경고가 표시됩니다.

  4. 컨슈머는 공급자 분석을 지원하는 템플릿을 포함하여 Clean Room의 모든 템플릿에 대해 평소와 같이 Clean Room을 구성합니다. 컨슈머가 공급자가 특정 템플릿을 실행하도록 허용하지 않으려는 경우 해당 템플릿에 대한 요구 사항을 생략할 수 있습니다. 공급자 분석을 지원하는 템플릿은 컨슈머 분석도 지원한다는 점에 유의하십시오.

  5. 컨슈머가 Clean Room에 가입하고 구성한 후, 공급자컨슈머 모두 일반적인 분석 흐름을 통해 Clean Room에서 템플릿을 실행할 수 있습니다.

  6. 공급자 실행 분석 권한은 일단 부여된 후에는 취소할 수 없습니다. 공급자 실행 분석을 중단하는 유일한 방법은 공급자 또는 컨슈머가 Clean Room을 삭제하는 것입니다.