조직 목록 매니페스트 참조

공급자는 조직 목록을 사용하여 조직 내에서 데이터 제품을 안전하게 공유할 수 있습니다. 프로그래밍 방식으로 조직 목록을 생성하려면 YAML (https://yaml.org/spec/)로 작성된 매니페스트가 필요합니다. 여기에 제공된 정보를 사용하여 적하 목록 형식과 개별 필드에 대해 알아보십시오.

조직 목록 필드는 더 큰 목록 매니페스트 참조 의 일부입니다. 조직 목록 필드를 추가하거나 수정하려면 DESCRIBE LISTINGALTER LISTING 명령을 사용하여 목록 매니페스트의 위치를 프로그래밍 방식으로 찾아 수정했습니다.

조직 목록 매니페스트

참고

조직 목록 필드는 다음 중 하나가 될 수 있습니다.

  • 선택 사항 - 조직 목록의 경우 선택 사항입니다.

  • 필수 - 조직 목록에 필수입니다.

조직 목록 매니페스트의 일반적인 형식은 다음과 같습니다.

#
# Organization listing manifest
#
title: <Required listing title>
description: <listing description>
resources: <optional listing resources>
listing_terms: <optional listing terms>
data_dictionary: <optional data dictionary>
usage_examples: <optional usage examples>
data_attributes: <optional data attributes>
organization_profile: <Optional custom organization profile. Default "INTERNAL">
organization_targets:
  - # Required
support_contact: "<support email address>"
  - # Required
approver_contact: "<approver email address"
  - # Required when the organization_targets includes the organization_targets.discover field
request_approval_type:
  - # Optional. Can be REQUEST_AND_APPROVE_IN_SNOWFLAKE or REQUEST_AND_APPROVE_OUTSIDE_SNOWFLAKE.
locations:
  - # Optional list of regions to share into.
auto_fulfillment:
  - # Required when the target accounts are outside the provider's region, otherwise optional.
resharing:
  enabled: true # Optional. Controls whether the listing can be reshared by consumers.

조직 목록 필드

조직 목록 매니페스트에는 접두사와 필수 및 선택 사항 필드 세트가 포함됩니다.

조직 목록 접두사

각 조직 목록 매니페스트는 다음 필드로 시작됩니다.

  • title (문자열, 필수, 최대 길이 110): 목록 제목입니다.

  • description (String, 선택 사항, 최대 길이 7500): 목록 설명입니다. 마크다운 구문이 지원됩니다.

  • resources (String, 선택 사항): 목록에 대한 리소스입니다.

  • listing_terms (하위 필드가 있는 상위 항목, 선택 사항): 목록에 대한 약관입니다.

  • :code:`organization_profile`(문자열, 선택 사항): 사용자 지정 조직 프로필입니다(선택 사항). 지정하지 않으면 기본값은 INTERNAL입니다.

resources

목록에 대한 리소스입니다.

선택 사항 resources 필드에는 다음과 같은 이름 값 쌍이 포함됩니다.

  • resources.documentation (문자열, 필수): 목록에 대한 자세한 설명서가 있는 웹사이트 페이지로 연결되는 정규화된 링크입니다. http 또는 https 로 시작해야 합니다.

  • resources.media (문자열, 선택 사항): 목록에 대한 비공개 또는 공개 YouTube 비디오에 대한 정규화된 링크입니다.

이 필드에 포함할 수 있는 정보 유형에 대한 자세한 내용은 세부 정보 섹션을 참조하세요.

resources 예제

. . .
resources:
  documentation: https://www.example.com/documentation/
  media: https://www.youtube.com/watch?v=MEFlT3dc3uc
. . .

listing_terms

목록의 서비스 약관을 정의합니다.

선택 사항 listing_terms 필드에는 다음과 같은 이름 값 쌍이 포함됩니다.

  • listing_terms.type

    • CUSTOM - CUSTOM`만 지원됩니다. :codenowrap:`listing_terms.type`이 지정된 경우 :codenowrap:`listing_terms.link 값도 지정해야 합니다.

  • listing_terms.link: 공급자의 목록 약관에 대한 정규화된 링크로, http 또는 https 로 시작해야 합니다.

자세한 내용은 :ref:`label-configuring_metadata_for_data_listing`의 테이블에서 **서비스 약관**을 참조하세요.

참고

컨슈머는 목록 약관을 프로그래밍 방식으로 수락할 수 있습니다. 자세한 내용은 Snowflake 지원팀 에 문의하십시오.

listing_terms 예제

. . .
listing_terms:
  type: "CUSTOM"
  link: "http://example.com/my/listing/terms"
. . .

data_dictionary

선택 사항 data_dictionary 필드는 목록 내의 오브젝트에 대한 데이터 미리 보기 및 열 유형에 대한 정보를 제공합니다.

data_dictionary 필드에는 최대 5개의 데이터 사전 항목 목록이 있습니다.

  • data_dictionary.featured (data_dictionary 사용 시 필수): ‘featured’이어야 함.

  • data_dictionary.featured.database (data_dictionary 사용 시 필수): 데이터베이스 이름입니다.

  • data_dictionary.featured.objects (data_dictionary 사용 시 필수): 다음 이름 값 쌍의 목록입니다.

    • name (문자열, 필수): 오브젝트 이름입니다.

    • schema (문자열, 필수): 데이터 사전과 연관된 스키마입니다.

    • domain (필수):

      다음 중 하나:

      • DATABASE

      • SCHEMA

      • TABLE

      • VIEW

      • EXTERNAL_TABLE

      • MATERIALIZED_VIEW

      • DIRECTORY_TABLE

      • FUNCTION

      • COLUMN

자세한 내용은 데이터 제품 - 데이터 사전 섹션을 참조하세요.

data_dictionary 예제

. . .
data_dictionary:
 featured:
    database: "WEATHERDATA"
    objects:
       - name: "GLOBAL_WEATHER"
         schema: "PUBLIC"
         domain: "TABLE"
       - name: "GLOBAL_WEATHER_REPORT"
         schema: "PUBLIC"
         domain: "TABLE"
. . .

usage_examples

선택 사항 usage_examples 필드에는 다음 이름 값 쌍의 목록이 포함됩니다.

  • usage.title (문자열, 필수): 사용 예제 제목입니다. 최대 길이는 110자입니다.

  • usage.description (String, 선택 사항): 사용 예제에 대한 설명입니다. 최대 길이는 300자입니다.

  • usage.query (문자열, 필수): 사용 예제와 연관된 쿼리입니다. 최대 길이는 30000자입니다.

자세한 내용은 샘플 SQL 쿼리 섹션을 참조하십시오.

usage_examples 예제

. . .
usage_examples:
  - title: "Return all weather for the US"
    description: "Example of how to select weather information for the United States"
    query: "select * from weather where country_code='USA'";
. . .

data_attributes

데이터 특성은 컨슈머에게 목록 정보를 제공합니다.

선택 사항 data_attributes 필드에는 다음과 같은 이름 값 쌍이 포함됩니다.

  • data_attributes.refresh_rate (필수)

    다음 중 하나: Snowflake에서 데이터 제품을 업데이트하는 빈도를 지정합니다.

    • CONTINUOUSLY

    • HOURLY

    • DAILY

    • WEEKLY

    • MONTHLY

    • QUARTERLY

    • ANNUALLY

    • STATIC

  • data_attributes.geography (필수):

    데이터 제품에 대한 지리적 정보를 지정합니다.

    • granularity (문자열, 필수)

      데이터 세트의 지리적 범위.

      다음 중 하나:

      • LATITUDE_LONGITUDE

      • ADDRESS

      • POSTAL_CODE

      • CITY

      • COUNTY

      • STATE

      • COUNTRY

      • REGION_CONTINENT

    • geo_option (문자열, 필수)

      다음 중 하나:

      • NOT_APPLICABLE

      • GLOBAL

      • COUNTRIES

    • coverage (geo_option 선택에 따라 필수):

      • 유효한 미국 주 이름 목록이 포함된 :code:`states`(문자열 목록).

      Or

      • :code:`continents`(대륙 목록):

        다음 중 하나에 해당합니다.

        • ASIA

        • EUROPE

        • AFRICA

        • NORTH AMERICA

        • SOUTH AMERICA

        • OCEANIA

        • ANTARCTICA

    • time (필수):

      데이터 제품의 기간을 지정합니다.

      • granularity (필수)

      다음 중 하나:

      • EVENT_BASED

      • HOURLY

      • DAILY

      • WEEKLY

      • MONTHLY

      • YEARLY

      • time_range (필수), 다음 이름/값 페어 포함:

        • time_frame (필수)

          다음 중 하나:

          • NEXT

          • LAST

          • BETWEEN

        • unit (필수)

          다음 중 하나:

          • DAYS

          • WEEKS

          • MONTHS

          • YEARS

        • value (time_frame 이 NEXT/LAST 인 경우 필수, 정수). 범위는 1~100입니다.

        • start_time (time_frame 이 BETWEEN 인 경우 필수, 문자열 날짜). 데이터 제품의 시작 시간입니다. 형식은 MM-DD-YYYY 입니다.

        • end_time (time_frame 이 BETWEEN인 경우 필수, 문자열 날짜), MM-DD-YYYY 형식.

데이터 제품 특성에 대한 자세한 내용은 데이터 제품 - 특성 섹션을 참조하세요.

data_attributes 예제

. . .
data_attributes:
  refresh_rate: DAILY
  geography:
    granularity:
      - REGION_CONTINENT
    geo_option: COUNTRIES
    coverage:
      continents:
        ASIA:
          - INDIA
          - CHINA
        NORTH AMERICA:
          - UNITED STATES
          - CANADA
        EUROPE:
          - UNITED KINGDOM
    time:
      granularity: MONTHLY
      time_range:
        time_frame: LAST
        unit: MONTHS
        value: 6

organization_targets

필수 organization_targets 필드는 목록을 검색하고 액세스할 수 있는 사용자를 정의합니다.

discoveryaccess 필드를 포함하며, 이 중 하나를 지정해야 합니다.

discovery

:code:`access`를 지정하지 않을 경우 필수, 지정할 경우 **선택 사항**입니다. 목록을 검색할 수 있는 사용자를 정의합니다. 입력하지 않으면 어떤 계정도 목록을 검색할 수 없습니다.

access

:code:`discovery`를 지정하지 않을 경우 필수, 지정할 경우 **선택 사항**입니다. 목록에 액세스할 수 있는 사용자를 정의합니다.

discoveryaccess 모두, 동일한 하위 필드를 포함합니다.

다음 중 하나를 수행합니다.

all_internal_accounts : {true | false}

`true`인 경우 모든 내부 계정은 목록을 찾거나 액세스할 수 있습니다. `false`인 경우 어떤 계정도 목록을 찾거나 액세스할 수 없습니다.

또는 계정 배열을 입력한 후 지정된 계정 내에 roles 배열(선택 사항)을 입력합니다.

- account: "<계정_이름>"

roles 이 있으면 계정 내에서 목록에 액세스하거나 목록을 검색할 수 있는 역할 목록을 지정합니다. 예:

roles: [ 'role1','role2']

organization_target

다음 예제는 discoveryaccess 필드의 다양한 조합을 보여줍니다.

조직의 모든 내부 계정이 목록을 검색하고 액세스할 수 있음

. . .
organization_targets:
   discovery:
   - all_internal_accounts : true
   access:
   - all_internal_accounts : true
. . .

검색 가능하지만 제한된 계정으로만 액세스 가능

조직 내의 모든 내부 계정은 목록을 검색할 수 있지만 재무 계정만 목록에 액세스할 수 있습니다.

. . .
organization_targets:
   discovery:
   - all_internal_accounts : true
   access:
   - account: 'finance'
. . .

검색 가능하지만 일부 계정만 액세스 가능

조직 내의 모든 내부 계정은 목록을 검색할 수 있지만 재무`또는 `크레딧 계정만 목록에 액세스할 수 있습니다.

. . .
organization_targets:
   discovery:
   - all_internal_accounts : true
   access:
   - account: 'finance'
   - account: 'credit'
. . .

검색 가능하지만 제한된 계정과 특정 역할로만 액세스 가능

조직 내의 모든 내부 계정은 목록을 검색할 수 있지만 회계 또는 차변 역할의 재무 계정만 목록에 액세스할 수 있습니다.

. . .
organization_targets:
    discovery:
    - all_internal_accounts : true
    access:
    - account: 'finance'

      roles: [ 'accounting','debit']
. . .

support_contact

목록과 관련된 지원 정보에 대한 이메일 주소입니다.

discovery 필드가 지정된 경우 **필수**입니다.

. . .
support_contact: "support@exampledomain.com"
. . .

approver_contact

목록 승인자의 이메일 주소입니다.

discovery 필드가 지정된 경우 **필수**입니다.

. . .
  approver_contact: "approver@exampledomain.com"
. . .

request_approval_type

승인 요청 및 승인이 Snowflake 내부 또는 외부에서 수행되는지 여부를 정의합니다. 다음 값 중 하나를 지정합니다.

  • NULL

  • REQUEST_AND_APPROVE_IN_SNOWFLAKE 는 Snowflake 환경 내에서 액세스 요청이 제출 및 승인되었음을 나타냅니다.

  • REQUEST_AND_APPROVE_OUTSIDE_SNOWFLAKE 는 공급자가 액세스 요청 제출 및 승인을 독립적으로 관리함을 나타냅니다.

외부 목록의 값은 항상 :code:`NULL`입니다.

. . .
  request_approval_type: "REQUEST_AND_APPROVE_IN_SNOWFLAKE"
. . .

locations

목록을 검색하거나 액세스할 수 있는 선택 사항 locations 을 지정합니다.

access_regions 필드는 :code:`locations`를 지정할 경우 **필수**이며 다음 하위 필드 중 하나를 포함해야 합니다.

  • ALL - 모든 리전에서 목록을 검색하거나 액세스할 수 있습니다.

  • 목록을 검색하거나 액세스할 수 있는 PUBLIC 접두사가 붙은 리전 이름의 배열입니다. 예: access_regions: - name: PUBLIC.AWS_US_WEST_2.

    . . .
    locations:
      access_regions:
      - name: "<names | ALL>"
    . . .
    

전체 리전 목록은 SHOW REGIONS 섹션을 참조하십시오.

auto_fulfillment

클라우드 간 자동 복제를 사용하면 목록과 연결된 데이터 제품이 다른 Snowflake 리전으로 자동으로 주문 처리될 수 있습니다. auto_fulfillment 필드는 자동 처리의 수행 방법을 정의합니다.

클라우드 간 자동 복제에 대한 자세한 내용은 목록 자동 복제 섹션을 참조하십시오.

자동 복제 기능은 여러 리전으로 데이터를 공유하는 경우에만 필요합니다. 같은 리전에 있는 계정과 공유하는 경우에는 이 기능을 활성화하지 마십시오.

여러 리전에서 데이터 공유를 하는 경우 auto_fulfillment 는 다음과 같습니다.

  • 데이터 제품이 애플리케이션 패키지인 경우 필수입니다.

  • 비공개 목록을 통해 데이터 제품을 공유하는 경우 필수입니다.

  • 공개 목록을 통해 데이터 제품을 공유하는 경우에 권장됩니다.

다음 이름 값 쌍을 포함합니다.

  • auto_fulfillment.refresh_schedule

    • <num> MINUTE - 분 단위. 최소 10분, 최대 8일 또는 11520분.

      refresh_typeSUB_DATABASE_WITH_REFERENCE_USAGE 로 지정된 경우 이 설정을 포함하지 마십시오. 애플리케이션 패키지의 새로 고침 일정은 계정 수준에서 정의해야 하며 목록 수준에서는 지정할 수 없습니다.

      자세한 내용은 계정 수준 새로 고침 간격 설정하기 을 참조하십시오.

  • USING CRON <expression> - 데이터 제품 자동 복제 새로 고침 일정을 정의합니다.

    USING CRONREPLICATION SCHEDULE 의 구문은 동일합니다. 매개 변수 섹션을 참조하십시오.

  • auto_fulfillment.refresh_type (auto_fulfillment 사용 시 필수): 다음 중 하나여야 함 -

    • SUB_DATABASE - 데이터베이스 복제(오브젝트 수준) - 권장됨.

    • SUB_DATABASE_WITH_REFERENCE_USAGE - 애플리케이션 패키지

    • FULL_DATABASE - 데이터베이스 복제(전체 데이터베이스에 대해). (사용 중단됨.)

  • auto_fulfillment.refresh_schedule_override (선택 사항): 동일한 데이터베이스를 사용하는 모든 목록에 대해 정의된 업데이트 새로 고침 빈도를 재정의합니다. 이 값이 FALSE 인 경우, 동일한 데이터베이스를 공유하는 여러 목록의 새로 고침 빈도가 다르면 목록 업데이트가 실패합니다.

    • TRUE - 새로 고침 빈도 재정의를 활성화합니다.

    • FALSE - (기본값) 새로 고침 빈도 재정의를 비활성화합니다.

  • auto_fulfillment.warehouse`(선택 사항): 리전 재공유를 위해 숨겨진 동적 테이블을 생성하고 새로 고치는 사용되는 웨어하우스의 이름입니다. 웨어하우스는 유지 관리 작업을 재공유하는 용도로만 사용됩니다. 목록이 재공유된 목록인 경우 필수입니다. 재공유되지 않은 목록의 경우 생략할 있습니다. 자세한 내용은 :doc:/collaboration/resharing-as-resharer` 섹션을 참조하십시오.

목록 자동 복제 도 참조하십시오.

auto_fulfillment.refresh_schedule

다음 예에서는 목록과 관련된 데이터 제품을 10분마다 새로 고칩니다.

. . .
listing_terms: . . .
. . .
auto_fulfillment:
  refresh_schedule: 10 MINUTE
  refresh_type: SUB_DATABASE
. . .

다음 예에서는 특정 리전에서 특정 날짜와 시간에 목록과 관련된 데이터 제품을 새로 고칩니다.

. . .
listing_terms: . . .
. . .
auto_fulfillment:
  refresh_schedule: USING CRON  0 17 * * MON-FRI Europe/London
  refresh_type: SUB_DATABASE
. . .

다음 예에서는 동일한 데이터베이스를 공유하지만 새로 고침 빈도가 다른 목록에 대한 새로 고침 빈도 재정의를 활성화합니다.

. . .
listing_terms: . . .
. . .
auto_fulfillment:
  refresh_schedule: 10 MINUTE
  refresh_type: SUB_DATABASE
  refresh_schedule_override: TRUE
. . .

Snowflake Native App auto_fulfillment 예제

SUB_DATABASE_WITH_REFERENCE_USAGE 는 애플리케이션 패키지와만 사용할 수 있으며 auto_fulfillment.refresh_schedule 과 결합할 수 없습니다.

. . .
listing_terms: . . .
. . .
auto_fulfillment:
  refresh_type: SUB_DATABASE_WITH_REFERENCE_USAGE
. . .

오브젝트 수준 auto_fulfillment

. . .
listing_terms: . . .
. . .
auto_fulfillment:
  refresh_type: SUB_DATABASE
. . .

resharing

resharing 필드는 목록의 컨슈머가 다른 계정과 데이터 제품을 재공유할 수 있는지 여부를 제어합니다.

재공유에 대한 자세한 내용은 목록 재공유하기 섹션을 참조하세요.

다음 이름 값 쌍을 포함합니다.

  • :code:`resharing.enabled`(선택 사항): 목록에 대한 재공유를 활성화하거나 비활성화합니다.

    • true - 컨슈머가 목록 데이터를 재공유할 수 있습니다.

    • false - (기본값) 컨슈머가 목록 데이터를 재공유할 수 없습니다.

참고

외부 목록만 resharing 속성을 지원합니다. 내부(조직) 목록에서는 재공유를 활성화할 수 없습니다.

resharing 예제

다음 예제에서는 목록에서 재공유를 활성화합니다.

. . .
listing_terms: . . .
. . .
resharing:
  enabled: true
. . .