CREATE ORGANIZATION LISTING

CREATE ORGANIZATION LISTING

조직 내에서 데이터 제품을 안전하게 공유하기 위해 조직 리스팅(organization listing)을 만드는 명령이에요. 조직 리스팅은 조직 내부 마켓플레이스(Internal Marketplace)에 게시할 데이터 제품을 정의해요.

출처: 문서

본문

조직 내에서 데이터 제품을 안전하게 공유하기 위해 조직 리스팅을 만들어요.

구문 (Syntax)

CREATE ORGANIZATION LISTING [ IF NOT EXISTS ] <name>
  [ { SHARE <share_name>  |  APPLICATION PACKAGE <package_name> } ]
  AS '<yaml_manifest_string>'
  [ PUBLISH = { TRUE | FALSE } ]

CREATE ORGANIZATION LISTING [ IF NOT EXISTS ] <name>
  [ { SHARE <share_name>  |  APPLICATION PACKAGE <package_name> } ]
  FROM '<yaml_manifest_stage_location>'
  [ PUBLISH = { TRUE | FALSE } ]

매개변수 (Parameters)

name 리스팅의 식별자(이름)를 지정해요. 다음 규칙을 따라야 해요.

  • 계정이 어느 Snowflake 리전에 있든 계정 안에서 고유해야 해요. ULL(Uniform Listing Locator)은 조직 안에서 고유해야 해요.
  • 포함된 달러 기호($)를 포함할 수 없어요.
  • Snowflake 식별자 요구 사항을 따라야 해요. 식별자 요구 사항(Identifier requirements)을 참고해요.

FROM 'yaml_manifest_stage_location' 내부 스테이지 또는 Git 저장소 클론의 manifest.yml 파일 경로를 지정해요.

SHARE share_name 리스팅에 연결할 셰어(share)의 식별자를 지정해요.

APPLICATION PACKAGE package_name 리스팅에 연결된 애플리케이션 패키지를 지정해요. SHOW APPLICATION PACKAGES도 함께 참고해요.

AS 'yaml_manifest_string' 조직 프로필의 YAML 매니페스트예요. 매니페스트 필드 세부 사항과 예시는 조직 리스팅 매니페스트 참조(Organization listing manifest reference)를 참고해요.

매니페스트는 일반적으로 달러 기호 인용 문자열(dollar-quoted string)로 제공돼요. 자세한 내용은 달러 기호 인용 문자열 상수(Dollar-quoted string constants)를 참고해요.

PUBLISH = { TRUE | FALSE } 리스팅을 게시하는 방법을 지정해요.

  • TRUE이면 리스팅이 즉시 내부 마켓플레이스에 게시돼요.
  • 기본값: TRUE

접근 제어 요구 사항 (Access control requirements)

이 작업을 실행하는 데 사용하는 역할(role)은 최소한 다음 권한을 가져야 해요.

권한 (Privilege) 객체 (Object) 비고
CREATE ORGANIZATION LISTING 또는 CREATE LISTING Account 조직 리스팅을 만들고 수정하려면 필요해요.

이 SQL 명령을 실행하는 데 사용하는 역할(role)은 최소한 다음 권한 중 하나를 가져야 해요.

권한 (Privilege) 객체 (Object) 비고
CREATE ORGANIZATION LISTING ACCOUNT 지정된 셰어 또는 지정된 Snowflake Native App Framework를 리스팅에 연결하려면 필요해요. Snowflake Native App Framework를 지정할 때는 OWNERSHIP 또는 ATTACH LISTING도 필요해요.
IMPORT ORGANIZATION LISTING ACCOUNT 리스팅을 마운트하거나 ULL(Uniform Listing Locator)을 사용해 조직 리스팅을 참조하는 쿼리를 실행하려면 필요해요.

사용 메모 (Usage notes)

CREATE ORGANIZATION LISTING …으로 만든 리스팅은 자동으로 게시돼요.

예시 (Examples)

이 예시는 매니페스트 YAML에 지정된 설정을 사용해 MYORGLISTING이라는 리스팅을 만들어요. 한 리전의 한 계정에 있는 하나의 역할을 대상으로 하며 지원(support) 및 승인(approver) 연락처를 포함해요.

참고: support_contact는 필수예요. discovery 대상이 제공되면 approver_contact가 필수예요.

USE ROLE <organization_listing_role>;

CREATE ORGANIZATION LISTING MYORGLISTING
SHARE <share_name> AS
$$
title: "My title"
description: "One region, all accounts"
organization_profile: "INTERNAL"
organization_targets:
  discovery:
    - account: "<account_name>"
      roles:
        - "<role>"
  access:
    - account: "<account_name>"
      roles:
        - "<role>"
support_contact: "[email protected]"
approver_contact: "[email protected]"
locations:
   access_regions:
   - name: "PUBLIC.<snowflake_region>"
$$

특정 스테이지 위치에서 'MYLISTING'이라는 초안(draft) 리스팅을 만들어요. 다음 예시에서 manifest.yml 파일은 listingstage라는 스테이지의 listingmanifests 폴더에 있어요.

CREATE ORGANIZATION LISTING MYLISTING
SHARE MySHARE FROM @dbforstage.public.listingstage/listingmanifests;

더 알아보기 (Learn more)

  • 조직 리스팅 매니페스트 참조 — 매니페스트 필드와 예시
  • ALTER ORGANIZATION LISTING — 조직 리스팅 수정