템플릿¶
템플릿은 지정된 공동 작업자가 실행할 수 있는 JinjaSQL 클린룸 템플릿입니다. 모든 공동 작업자는 공동 작업에서 공동 작업자와 템플릿을 공유할 수 있습니다. 자신의 계정에 등록된 템플릿만 추가하거나 제거하도록 요청할 수 있습니다.
템플릿을 등록하고 공동 작업에 추가하는 방법을 알아보려면 계속 읽으세요.
템플릿 등록¶
템플릿을 등록하려면 다음 단계를 따릅니다.
:ref:`공동 작업을 위한 템플릿을 디자인 <label-dcr_design_collaboration_template>`하고 :ref:`템플릿 사양 <label-dcr_collaboration_template_yaml>`에 포함합니다.
REGISTER_TEMPLATE을 호출하여 템플릿을 등록합니다. 이는 템플릿을 연결하는 데 사용할 템플릿 ID를 반환합니다.
템플릿이 등록되면 해당 레지스트리에 대한 읽기 액세스 권한이 있는 모든 사용자가 공동 작업에 연결할 수 있습니다.
템플릿 추가¶
템플릿 추가 요청 프로세스는 공동 작업이 이미 존재하는지에 따라 달라집니다.
공동 작업이 생성되기 전에 템플릿을 추가 하려면 템플릿 ID를 공동 작업 소유자에게 제공합니다. 공동 작업 소유자는 이를 공동 작업 사양 에 포함하여 템플릿을 실행할 수 있는 대상을 지정합니다. 다음 공동 작업 코드 조각에서
alice는bob_template_v1템플릿을 실행할 수 있는 액세스 권한이 부여되었습니다.
기존 공동 작업에 템플릿을 추가하려면 다음 단계에 따라 모든 잠재적 공유자에게 요청을 보냅니다.
템플릿 ID와 함께 ADD_TEMPLATE_REQUEST를 호출하여 특정 사용자를 대상으로 특정 공동 작업에 템플릿을 추가하는 승인 흐름을 시작합니다.
템플릿의 영향을 받는 모든 공동 작업자는 VIEW_UPDATE_REQUESTS를 호출할 때 요청을 확인합니다.
PENDING_MY_APPROVAL 상태의 요청을 확인하는 공동 작업자는 APPROVE_UPDATE_REQUEST 또는 REJECT_UPDATE_REQUEST를 호출해야 합니다.
공동 작업자가 요청을 거부하면 업데이트 요청이 거부됩니다.
공동 작업자는 나중에 승인을 거부로 변경하거나 거부를 승인으로 변경할 수 없습니다.
템플릿은 모든 요청 당사자가 요청을 승인할 때까지 공유되지 않습니다.
공동 작업자는 나중에 승인을 거부로 변경하거나 거부를 승인으로 변경할 수 없습니다.
승인 후 다른 공동 작업자가 계속 승인해야 하는 경우 상태가 PENDING_PARTNER_APPROVAL로 변경됩니다.
모든 필수 공동 작업자가 승인한 경우 상태가 APPROVED로 변경되고 업데이트가 자동으로 적용됩니다. 업데이트 요청의 터미널 상태는 COMPLETED 및 FAILED입니다. 요청 상태가 COMPLETED인 경우 템플릿 추가 요청에 지정된 사용자가 템플릿을 사용할 수 있습니다. 요청 상태가 FAILED인 경우, 실패 세부 정보는 VIEW_UPDATE_REQUESTS에서 DETAILS 열을 참조하세요. 공동 작업자가 요청을 거부하는 경우 상태는 REJECTED로 변경되고 거부 당사자가 제공한 모든 이유가 요청 보고서에 표시됩니다.
모든 사용자가 템플릿을 승인한 후 템플릿을 사용할 수 있을 때까지 약간의 지연이 있을 수 있습니다. VIEW_TEMPLATES를 호출하여 템플릿을 사용할 수 있는지 확인합니다.
팁
등록한 템플릿을 확인하려면 VIEW_REGISTERED_TEMPLATES를 호출합니다.
분석을 실행하는 방법을 알아보려면 분석 실행 섹션을 참조하세요.
템플릿 디자인¶
공동 작업 템플릿은 공급자 및 컨슈머 클린룸 템플릿 과 동일하지만 다음과 같은 몇 가지 고려 사항이 있습니다.
템플릿의
source_table변수는 공동 작업의 데이터 오퍼링으로 채워집니다. 대부분의 공동 작업 템플릿에서source_table은 사용되는 유일한 데이터 소스 변수입니다.템플릿의
my_table은 분석 실행자가 Snowflake Standard Edition을 사용하고 공동 작업에 데이터 오퍼링을 기여할 수 없는 경우에만 사용됩니다.원래 데이터 소스의 열은 템플릿이나 사용자에게 노출될 때 이름을 바꿀 수 있습니다. 소스 열의 이름을 바꾸는 방법과 시기를 알아보려면 소스 열 이름 바꾸기 섹션을 참조하세요. 템플릿 및 사용자가 제공한 인자(예: 참여 열 이름)는 열 이름이 바뀐 경우 원래 이름이 아닌 최종 이름을 사용해야 합니다.
공동 작업의 활성화 템플릿에는
activation_<template_name>이름을 지정할 필요가 없습니다. 기타 모든 :ref:`활성화 템플릿 요구 사항 <label-dcr_custom_templates_activation>`은 계속 적용됩니다.
Snowflake Data Clean Rooms의 사용자 지정 템플릿 구문에 대한 자세한 내용은 사용자 지정 템플릿 디자인 섹션을 참조하세요.