개발자 APIs를 사용하여 활성화를 위해 공급자에게 결과 보내기

일부 경우 공동 작업자는 컨슈머가 분석을 실행한 다음, 그 결과를 공급자에게 푸시하여 활성화하기를 원합니다. 이 항목에서는 개발자 APIs를 사용하여 컨슈머에서 공급자에게 결과를 전송하는 방법을 설명합니다.

공급자 활성화의 기본적인 플로우는 다음과 같습니다.

공급자:
  • 컨슈머가 실행하여 공급자에게 결과를 전송하여 활성화할 수 있는 템플릿을 생성 합니다.

  • samooha_by_snowflake_local_db.library.temp_public_key 테이블을 클린룸에 연결 합니다.

컨슈머:

공급자의 템플릿을 실행 하여 결과를 공급자의 Snowflake 계정으로 다시 보냅니다.

공급자:

Snowflake 계정의 테이블에서 결과를 확인 합니다.

공급자 활성화를 위한 템플릿 만들기

결과를 활성화하는 데 사용되는 템플릿은 분석을 실행하는 데 사용되는 템플릿과 유사합니다. 예를 들어, 활성화 템플릿은 분석 템플릿처럼 provider.add_custom_sql_template 명령으로 클린룸에 추가됩니다. 그러나 활성화 템플릿에는 다음과 같은 중요한 차이점이 있습니다.

  • 활성화 템플릿의 이름은 activation 문자열로 시작해야 합니다. 예를 들어, 이름이 activation_my_template 인 활성화 템플릿은 요구 사항을 충족합니다.

  • 활성화 템플릿은 특정 규칙을 따르는 이름으로 테이블을 생성하고 테이블 이름을 명시적으로 반환해야 합니다.

활성화 템플릿에서 테이블 정의하기

활성화 결과를 클린룸에 보관하려면 모든 활성화 템플릿에서 테이블을 생성해야 합니다. 이 테이블에는 다음의 두 가지 요구 사항이 있습니다.

  • 테이블 이름은 cleanroom.activation_data_ 문자열로 시작해야 합니다. 예를 들어, 이름이 cleanroom.activation_data_analysis_results 테이블은 요구 사항은 충족합니다.

  • 템플릿 정의에서 테이블을 생성하는 부분은 테이블의 이름을 형성하기 위해 cleanroom.activation_data_ 에 추가된 문자열을 반환해야 합니다. 예를 들어, 테이블 이름이 cleanroom.activation_data_analysis_results 인 경우 analysis_results 문자열이 반환되어야 합니다.

다음은 테이블을 정의하고 내보내기 위해 템플릿 정의에 포함되어야 하는 내용의 예입니다.

BEGIN
  CREATE OR REPLACE TABLE cleanroom.activation_data_analysis_results AS
    SELECT * FROM identifier({{ my_table[0] }})
  RETURN 'analysis_results';
END;
Copy

provider.add_custom_sql_template 명령을 호출하여 클린룸에 활성화 템플릿을 추가하는 방법에 대한 자세한 내용은 Snowflake Data Clean Rooms: 공급자 API 참조 가이드 섹션을 참조하십시오.

결과를 공급자에게 다시 보내기

컨슈머는 consumer.run_activation 명령을 호출하여 활성화 템플릿을 실행하는 방식으로 결과를 공급자에게 다시 전송하며, 이는 consumer.run_analysis 명령을 실행하는 것과 유사합니다. 차이점은 두 번째 인자로, 이 인자는 공급자가 활성화 내용을 파악하는 데 도움이 되는 문자열을 지정합니다.

예를 들어, 컨슈머는 다음을 호출할 수 있습니다.

CALL samooha_by_snowflake_local_db.consumer.run_activation(
  'activation_clean_room',
  'my_activation_segment',
  'activation_custom_template',
  ['consumer_source_table'],
  ['provider_source_table'],
  object_construct(
    'dimensions', ['p.CAMPAIGN'],
    'where_clause', 'p.EMAIL=c.EMAIL'
));
Copy

consumer.run_activation 명령의 구문에 대한 자세한 내용은 Snowflake Data Clean Rooms: 컨슈머 API 참조 가이드 섹션을 참조하십시오.

공급자로서 활성화된 결과 보기

컨슈머가 결과를 공급자에게 활성화한 후, 공급자는 Snowflake 계정에서 이러한 결과를 볼 수 있습니다(클린룸 환경 아님). 결과를 보려면 공급자가 Snowflake 계정에 로그인하기 전에 클린룸 환경에 로그인해야 합니다.

자세한 내용은 활성화된 결과 보기 섹션을 참조하십시오.