콜라보레이션 스펙(Collaboration specification)

콜라보레이션 스펙(Collaboration specification)

높은 수준의 콜라보레이션을 정의하는 스펙이에요. 어떤 분석 실행자가 초대되는지, 각 분석 실행자가 접근하고 실행할 수 있는 데이터와 템플릿을 지정해요.

출처: Collaboration specification

본문

기능 — 일반 공개(Generally Available)

현재 지원 리전: 이 리전들에서 사용할 수 있어요.

정부 및 VPS 배포에서는 사용할 수 없어요.

모든 콜라보레이터에게 보이는 높은 수준의 콜라보레이션을 정의해요. 이 스펙은 어떤 분석 실행자가 초대되는지, 각 분석 실행자가 접근하고 실행할 수 있는 데이터와 템플릿을 지정해요. 여기에 나열된 템플릿이나 데이터 오퍼링은 콜라보레이션 스펙에 포함되기 전에 등록되어 있어야 해요.

소유자는 INITIALIZE를 호출해 이 스펙을 제출해요.

콜라보레이션이 만들어진 뒤 소유자는 EDIT(이것은 미리보기 기능)을 호출해 이 스펙의 업데이트 버전을 제출함으로써 콜라보레이션을 그 자리에서 편집하도록 요청할 수 있어요.

스키마:

api_version: 2.0.0              # Required: Must be "2.0.0"
spec_type: collaboration        # Required: Must be "collaboration"
name: <collaboration_name>      # Required: Unique name (max 75 chars)
description: <collaboration_description>  # Optional: Description (max 1,000 chars)
owner: <owner_alias>            # Required: Alias of owner

collaborator_identifier_aliases:  # Required: Map aliases to account identifiers
  <alias_1>: <account_identifier_1>  # One or more alias mappings...

analysis_runners:               # Required: Who can run analyses
  <analysis_runner_alias>:      # One or more analysis runner definitions...
    data_providers:             # Required: Data providers for this runner
      <provider_alias>:         # One or more provider definitions...
        data_offerings:         # Required: List of offerings (can be empty [])
          - id: <data_offering_id>  # Zero or more data offering IDs...
    templates:                  # Optional: Templates this runner can use
      - id: <template_id>       # One or more template IDs...
    activation_destinations:    # Optional: Where results can be sent
      snowflake_collaborators:  # Optional: Collaborators who can receive results
        - <collaborator_alias>  # One or more collaborator aliases...
  • api_version — 사용된 Collaboration API 버전이에요. 2.0.0이어야 해요.
  • spec_type — 스펙 유형 식별자예요. collaboration이어야 해요.
  • name: collaboration_name — 이 콜라보레이션의 사용자 친화적인 이름이에요. 생성자 계정에서 고유해야 하고 Snowflake 식별자 규칙을 따라야 해요(최대 75자).
  • description: collaboration_description(선택) — 콜라보레이터가 읽을 수 있는 콜라보레이션 설명이에요(최대 1,000자).
  • owner: owner_alias — collaborator_identifier_aliases에 정의된 콜라보레이션 소유자의 별칭이에요.
  • collaborator_identifier_aliases — 콜라보레이터 별칭과 그들의 Data Sharing 계정 식별자 간 매핑이에요. 여기에 나열된 사용자만 콜라보레이션에 참여할 수 있어요. 모든 콜라보레이터를 참조할 때는 데이터 공유 계정 식별자를 직접 사용하는 대신 여기에 정의된 별칭을 사용하세요. 이 콜라보레이션에서 고유해야 하고 Snowflake 식별자 규칙을 따라야 해요(최대 25자).
  • analysis_runners — 이 콜라보레이션에서 누가 분석을 실행할 수 있는지 설명해요. 각 분석 실행자는 고유한 별칭으로 키가 정해져요. 이 콜라보레이션에서 분석을 실행할 계정을 최소 하나 이상 허용해야 해요.
  • <analysis_runner_alias> — 이 콜라보레이션에서 분석을 실행할 수 있는 계정의 별칭이에요. 별칭은 collaborator_identifier_aliases 목록에 정의돼요.
  • data_providers — 이 분석 실행자가 접근할 수 있는 데이터를 제공하는 데이터 제공자들이에요. 각 제공자는 collaborator_identifier_aliases에 정의된 별칭으로 키가 정해져요.
  • data_offerings — 이 분석 실행자가 접근할 수 있는 이 데이터 제공자의 데이터 오퍼링 목록이거나, 나중에 데이터 오퍼링을 추가할 수 있도록 자리 표시자로 빈 배열 []이에요. 각 데이터 오퍼링은 데이터 제공자가 REGISTER_DATA_OFFERING을 호출할 때 생성된 ID로 참조돼요.
  • templates(선택) — 이 분석 실행자가 사용할 수 있는 템플릿들이에요. 각 템플릿은 ID로 참조돼요. 초기 스펙에서 생략할 수도 있고, 콜라보레이션이 만들어진 뒤에도 이 분석 실행자와 템플릿을 공유할 수 있어요.
  • activation_destinations(선택) — 분석 결과의 활성화 설정을 정의해요.
  • snowflake_collaborators(선택) — 활성화된 분석 결과를 받을 수 있는 콜라보레이터 목록이에요. 이 스펙의 collaborator_identifier_aliases 목록에 있는 별칭을 사용하세요. 여기에 나열된 모든 콜라보레이터는 활성화 구현에 설명된 권한을 가져야 해요.

예시

api_version: 2.0.0
spec_type: collaboration
name: my_sample_collaboration
owner: Owner
collaborator_identifier_aliases:
  Owner: ENG.OWNER
  AnalysisRunner_1: ENG.CONSUMER_1
  DataProvider_1: ENG.PROVIDER_1
  DataProvider_2: ENG.PROVIDER_2
  AnalysisRunner_2: ENG.PROVIDER_3
analysis_runners:
  AnalysisRunner_1:
    data_providers:
      DataProvider_1:
        data_offerings:
        - id: DCR_PREPROD_CI_PROVIDER_ANY_NAME_ZUDFTMULHQ_iuDfn_v0
      DataProvider_2:
        data_offerings: []
    templates:
    - id: test_sca_three_party_template_JOaVG_v0
  AnalysisRunner_2:
    data_providers:
      DataProvider_2:
        data_offerings: []
    templates:
    - id: test_sca_three_party_template_JOaVG_v0

더 알아보기