자습서¶
사용 사례: 공급자가 내부 마켓플레이스에서 목록을 공유합니다. 그런 다음 컨슈머와 재공유됩니다.¶
이 사용 사례에서 공급자는 내부 마켓플레이스에서 재공유할 수 있는 목록을 공유합니다. 컨슈머 A는 목록을 검색한 다음 컨슈머 B와 재공유합니다.
참고
Snowflake Marketplace에서 목록을 재공유하는 단계와 비공개 목록을 재공유하는 단계는 이 사용 사례에서 제공되는 단계와 유사합니다.
1단계. 공급자가 내부 마켓플레이스에서 재공유할 수 있는 목록을 생성합니다.¶
참고
리전 간 재공유를 활성화하려면 공급자가 해당 테이블에 대해 change_tracking`을 활성화해야 합니다. 이 작업은 :doc:/sql-reference/sql/create-table` 또는 /sql-reference/sql/alter-table`을 사용하여 프로그래밍 방식으로만 수행할 수 있습니다. 자세한 내용은 :ref:`label-dynamic_tables_and_change_tracking 섹션을 참조하십시오.
2단계. 컨슈머 A가 목록을 검색하고 재공유합니다.¶
이 예제에서 컨슈머 A는 내부 마켓플레이스에서 공유 목록을 검색한 다음 두 번째 수준 컨슈머(컨슈머 B)와 재공유합니다.
목록을 볼 수 있는지 확인¶
새 뷰 생성¶
공유 목록의 오브젝트를 참조하는 새 데이터베이스 또는 기존 데이터베이스에 뷰를 생성합니다.
뷰는 다음 예제와 같이 목록을 참조합니다. 이전에 복사한 목록 ULL을 포함합니다. 이 ULL에는 목록 이름, 스키마, 테이블 이름이 포함됩니다. 이 뷰는 발신 뷰가 됩니다.
CREATE SECURE VIEW drt_secure_view
COMMENT = '<comment>'
AS SELECT * FROM ORGDATACLOUD$INTERNAL$DAILY_REVENUE_RESHARE.public.daily_revenue_table;
새 뷰는 데이터베이스의 공용 뷰에 나열됩니다.
컨슈머 B와 목록 재공유¶
목록을 컨슈머 B와 재공유하려면 다음 단계를 따릅니다.
탐색 메뉴에서 Marketplace » Provider Studio 를 선택합니다.
Listings 페이지에서 Create listing » :ui:`Specified consumer`를 선택합니다.
목록의 이름을 지정합니다.
이 예제에서 목록의 이름은 *일일 수익 테이블 재공유*입니다.
Add data product 를 선택합니다.
위에서 생성한 보안 뷰를 선택합니다.
이 사용 사례에서 보안 뷰의 이름은 *DRT_SECURE_VIEW*입니다.
필수 목록 필드를 계속 업데이트합니다.
이 사용 사례의 경우 이 목록을 재공유할 수 없도록 재공유 섹션을 편집합니다. 이는 선택 사항입니다. 계속해서 재공유할 수 있도록 재공유된 목록을 구성할 수 있습니다.
참고
데이터베이스를 교차하는 재공유 목록에 대해 자동 복제를 활성화하는 경우 웨어하우스를 지정해야 합니다. 이 작업은 목록 자동 복제 설정의 UI를 통해 수행하거나 목록 매니페스트의
auto-fulfillment속성에 ``warehouse``를 지정하여 프로그래밍 방식으로 수행할 수 있습니다.목록을 게시합니다.
이제 비즈니스 파트너가 목록을 사용할 수 있습니다.
공유 중인 목록을 보려면 다음 단계를 따릅니다.
탐색 메뉴에서 Data sharing » External sharing 를 선택합니다.
External sharing 페이지에서 :ui:`Shared by your account`를 선택합니다.
3단계. 컨슈머 B가 재공유된 목록 검색¶
이 예제에서 컨슈머 B는 이전 단계에서 재공유된 목록을 검색합니다.
컨슈머 B로 Snowsight 에 로그인합니다.
탐색 메뉴에서 Data sharing » External sharing 를 선택합니다.
External sharing 페이지에서 :ui:`Shared with you`를 선택합니다.
:ui:`Get`을 선택하여 목록을 검색한 다음 :ui:`Get`을 선택하여 다시 한번 확인합니다.
이제 재공유된 목록을 사용할 준비가 되었습니다. 목록을 테스트하려면 다음 명령을 실행합니다.
SELECT * FROM resharing_daily_revenue_table.public.drt_secure_view;