Manifest-Referenz für Organisations-Freigabeangebot

Als Anbieter können Sie Organisations-Freigabeangebote verwenden, um Datenprodukte sicher innerhalb Ihrer Organisation zu auszutauschen. Für die programmgesteuerte Erstellung von Organisations-Freigabeangeboten ist ein Manifest erforderlich, das in YAML (https://yaml.org/spec/) geschrieben ist. Nutzen Sie die hier bereitgestellten Informationen, um sich über das Manifest-Format und seine einzelnen Felder zu informieren.

Die Felder für Organisations-Freigabeangebote sind Teil der größeren Referenz zum Freigabeangebots-Manifest. Um Felder für Organisations-Freigabeangebote programmatisch hinzuzufügen oder zu ändern, suchen Sie das Freigabeangebots-Manifest und ändern es mit den Befehlen DESCRIBE LISTING und ALTER LISTING.

Manifest für Organisations-Freigabeangebot

Bemerkung

Felder für Organisations-Freigabeangebote können eine der folgenden Eigenschaften haben:

  • Optional - Optional für Organisations-Freigabeangebote.

  • Erforderlich - Erforderlich für Organisations-Freigabeangebote.

Das allgemeine Format eines Manifests für Organisations-Freigabeangebote ist wie folgt:

#
# 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.
Copy

Felder für Organisations-Freigabeangebote

Manifeste für Organisations-Freigabeangebote enthalten ein Präfix, gefolgt von einer Reihe von erforderlichen und optionalen Feldern.

Präfix für das Organisations-Freigabeangebot

Jedes Manifest eines Organisations-Freigabeangebots beginnt mit den folgenden Feldern:

  • title (String, erforderlich, max. 110 Zeichen): Titel des Freigabeangebots.

  • description (Zeichenfolge, optional, maximale Länge 7.500): Beschreibung des Freigabeangebots. Die Markdown-Syntax wird unterstützt.

  • resources (Zeichenfolge, optional): Ressourcen für das Freigabeangebot.

  • listing_terms (übergeordnete Felder mit untergeordneten Feldern, optional): Bedingungen für das Freigabeangebot.

  • organization_profile (String, optional): Optionales kundenspezifisch Organisationsprofil. Wenn nichts angegeben wird, wird standardmäßig INTERNAL verwendet.

resources

Ressourcen für das Freigabeangebot.

Das optionale Feld resources enthält die folgenden Name/Wert-Paare:

  • resources.documentation (String, erforderlich): Ein vollqualifizierter Link zu einer Seite auf Ihrer Website, wo eine detailliertere Dokumentation zu Ihrem Angebot zu finden ist. Muss mit http oder https beginnen.

  • resources.media (Zeichenfolge, optional): Ein vollqualifizierter Link zu einem nicht aufgelisteten oder öffentlichen YouTube-Video für das Freigabeangebot.

Weitere Informationen zu den Arten von Informationen, die Sie in dieses Feld einfügen können, finden Sie unter Details.

resources-Beispiel

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

listing_terms

Legt die Nutzungsbedingungen für das Freigabeangebot fest.

Das optionale Feld listing_terms enthält die folgenden Name/Wert-Paare:

  • listing_terms.type

    • CUSTOM – Nur CUSTOM wird unterstützt. Wenn listing_terms.type angegeben ist, dann müssen Sie auch einen Wert für isting_terms.link angeben.

  • listing_terms.link: Ein vollständig qualifizierter Link zu den Angebotsbedingungen des Anbieters, der mit http oder https beginnen muss.

Weitere Informationen finden Sie im Abschnitt Nutzungsbedingungen in der Tabelle unter Basisinformationen.

Bemerkung

Verbraucher können Bedingungen für Freigabeangebote programmgesteuert akzeptieren. Weitere Informationen dazu erhalten Sie vom Snowflake-Support.

listing_terms-Beispiel

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

data_dictionary

Das optionale Feld data_dictionary enthält Informationen zur Datenvorschau und zu den Spaltentypen für die Objekte im Freigabeangebot.

Das Feld data_dictionary enthält eine Liste von bis zu fünf Data Dictionary-Einträgen:

  • data_dictionary.featured (erforderlich bei Verwendung von data_dictionary): muss „featured“ sein.

  • data_dictionary.featured.database (erforderlich bei Verwendung von data_dictionary): Der Name der Datenbank.

  • data_dictionary.featured.objects (erforderlich bei Verwendung von data_dictionary): Eine Liste mit den folgenden Name/Wert-Paaren:

    • name (Zeichenfolge, erforderlich): Der Name des Objekts.

    • schema (Zeichenfolge, erforderlich): Das mit dem Datenwörterbuch verbundene Schema.

    • domain (erforderlich):

      Eine der folgenden Berechtigungen:

      • DATABASE

      • SCHEMA

      • TABLE

      • VIEW

      • EXTERNAL_TABLE

      • MATERIALIZED_VIEW

      • DIRECTORY_TABLE

      • FUNCTION

      • COLUMN

Weitere Informationen dazu finden Sie unter Datenprodukt – Datenwörterbuch.

data_dictionary-Beispiel

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

usage_examples

Das optionale Feld usage_examples enthält eine Liste der folgenden Name/Wert-Paare:

  • usage.title (Zeichenfolge, erforderlich): Der Titel des Verwendungsbeispiels. Die maximale Länge beträgt 110 Zeichen.

  • usage.description (Zeichenfolge, optional): Eine Beschreibung des Verwendungsbeispiels. Die maximale Länge beträgt 300 Zeichen.

  • usage.query (Zeichenfolge, erforderlich): Die Abfrage, die mit dem Verwendungsbeispiel verbunden ist. Die maximale Länge beträgt 30.000 Zeichen.

Weitere Informationen dazu finden Sie unter SQL-Beispielabfragen.

usage_examples-Beispiel

. . .
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'";
. . .
Copy

data_attributes

Datenattribute versorgen die Verbraucher mit Informationen zum Freigabeangebot.

Das optionale Feld data_attributes enthält die folgenden Name/Wert-Paare:

  • data_attributes.refresh_rate (erforderlich)

    Eine der folgenden Möglichkeiten: Gibt an, wie oft Ihr Datenprodukt in Snowflake aktualisiert wird.

    • CONTINUOUSLY

    • HOURLY

    • DAILY

    • WEEKLY

    • MONTHLY

    • QUARTERLY

    • ANNUALLY

    • STATIC

  • data_attributes.geography (erforderlich):

    Gibt geografische Informationen für das Datenprodukt an.

    • granularity (string, erforderlich)

      Geografische Abdeckung des Datensatzes.

      Eine der folgenden Berechtigungen:

      • LATITUDE_LONGITUDE

      • ADDRESS

      • POSTAL_CODE

      • CITY

      • COUNTY

      • STATE

      • COUNTRY

      • REGION_CONTINENT

    • geo_option (string, erforderlich)

      Eine der folgenden Berechtigungen:

      • NOT_APPLICABLE

      • GLOBAL

      • COUNTRIES

    • coverage (erforderlich aufgrund der Auswahl von geo_option):

      • states (Liste mit Statusangaben) – enthält eine beliebige Liste gültiger Namen von US-Bundesstaaten.

      Or

      • continents (Liste der Kontinente):

        Einer der folgenden Punkte:

        • ASIA

        • EUROPE

        • AFRICA

        • NORTH AMERICA

        • SOUTH AMERICA

        • OCEANIA

        • ANTARCTICA

    • time (erforderlich):

      Gibt den Zeitraum für das Datenprodukt an.

      • granularity (erforderlich)

      Eine der folgenden Berechtigungen:

      • EVENT_BASED

      • HOURLY

      • DAILY

      • WEEKLY

      • MONTHLY

      • YEARLY

      • time_range (erforderlich) enthält die folgenden Name/Wert-Paare:

        • time_frame (erforderlich)

          Eine der folgenden Berechtigungen:

          • NEXT

          • LAST

          • BETWEEN

        • unit (erforderlich)

          Eine der folgenden Berechtigungen:

          • DAYS

          • WEEKS

          • MONTHS

          • YEARS

        • value (erforderlich, wenn time_frame NEXT/LAST ist, Ganzzahl). Der Bereich reicht von 1 bis 100.

        • start_time (erforderlich, wenn time_frame BETWEEN ist, Zeichenfolgen-Datum). Die Startzeit für das Datenprodukt. Das Format ist MM-DD-YYYY.

        • end_time (erforderlich, wenn time_frame BETWEEN ist, String date), Format MM-DD-YYYY.

Weitere Informationen zu Datenproduktattributen finden Sie unter Datenprodukt – Attribute.

data_attributes-Beispiel

. . .
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
Copy

organization_targets

Das erforderliche Feld organization_targets definiert, wer das Freigabeangebot sehen und darauf zugreifen kann.

Enthält die Felder discovery und access, von denen eines angegeben werden muss.

discovery

Erforderlich, wenn access nicht angegeben ist, aber ansonsten optional. Legt fest, wer das Freigabeangebot entdecken kann. Wenn nicht vorhanden, kann kein Konto das Freigabeangebot entdecken.

access

Erforderlich, wenn discovery nicht angegeben ist, aber ansonsten optional. Legt fest, wer auf das Freigabeangebot zugreifen kann.

Sowohl discovery als auch access enthalten die gleichen untergeordneten Felder.

Entweder:

all_internal_accounts : {true | false}

Wenn der Wert true lautet, können alle internen Konten das Freigabeangebot finden oder darauf zugreifen. Wenn der Wert false lautet, kann kein Konto das Freigabeangebot finden oder darauf zugreifen.

Oder ein Array von Konten, gefolgt von dem optionalen Array roles innerhalb der angegebenen Konten.

- account: "<Kontoname>"

Wenn roles vorhanden ist, wird eine Liste von Rollen innerhalb des Kontos angegeben, die auf das Freigabeangebot zugreifen oder es sehen können. Beispiel:

roles: [ 'role1','role2']

organization_target-Beispiele

Die folgenden Beispiele zeigen verschiedene Kombinationen der Felder discovery und access.

Alle internen Konten in der Organisation können das Freigabeangebot entdecken und darauf zugreifen

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

Auffindbar, aber nur für begrenzte Konten zugänglich

Alle internen Konten innerhalb der Organisation können das Freigabeangebot entdecken, aber nur Finanz-Konten können auf das Freigabeangebot zugreifen.

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

Auffindbar, aber nur für ausgewählte Konten zugänglich

Alle internen Konten innerhalb der Organisation können das Freigabeangebot entdecken, aber nur Konten im Finanz- oder Credit-Konto können auf das Freigabeangebot zugreifen.

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

Auffindbar, aber nur für begrenzte Konten und bestimmte Rollen zugänglich

Alle internen Konten innerhalb der Organisation können das Freigabeangebot entdecken, aber nur Konten im Finanz-Konto mit der Rolle Buchhaltung oder Debit können auf das Freigabeangebot zugreifen.

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

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

support_contact

Die E-Mail-Adresse für Support-Informationen, die mit dem Freigabeangebot verbunden sind.

Erforderlich, wenn das discovery-Feld angegeben ist.

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

approver_contact

Die E-Mail-Adresse des Genehmigers des Freigabeangebots.

Erforderlich, wenn das discovery-Feld angegeben ist.

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

request_approval_type

Define whether approval requests and approvals will happen inside or outside of Snowflake. Specify one of the following values:

  • NULL

  • REQUEST_AND_APPROVE_IN_SNOWFLAKE indicates access requests are submitted and approved within the Snowflake environment.

  • REQUEST_AND_APPROVE_OUTSIDE_SNOWFLAKE indicates the provider manages access request submissions and approvals independently.

The value for external listings is always NULL.

. . .
  request_approval_type: "REQUEST_AND_APPROVE_IN_SNOWFLAKE"
. . .
Copy

locations

Gibt die optionalen locations an, die das Freigabeangebot sehen oder darauf zugreifen können.

Das access_regions-Feld ist erforderlich, wenn locations angegeben ist und muss eines der folgenden Unterfelder enthalten:

  • ALL - Alle Regionen können das Freigabeangebot sehen oder darauf zugreifen.

  • Ein Array mit den Namen der Regionen, denen das Präfix PUBLIC vorangestellt ist und die das Freigabeangebot sehen oder darauf zugreifen können. Zum Beispiel access_regions: - name: PUBLIC.AWS_US_WEST_2.

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

Eine vollständige Liste der Regionen finden Sie unter SHOW REGIONS.

auto_fulfillment

Cross-Cloud Auto-fulfillment allows the data product associated with a listing to be automatically fulfilled to other Snowflake regions. The auto_fulfillment field defines how that auto-fulfillment takes place.

For more information on Cross-Cloud Auto-fulfillment, see Automatische Ausführung für Freigabeangebote.

Auto-fulfillment is only required if you’re sharing data to multiple regions. Do not enable it if you are sharing to accounts in the same region.

If you share data across multiple regions, the auto_fulfillment is:

  • Required if your data product is an application package.

  • Required if your data product is shared through a private listing.

  • Recommended if your data product is shared through a public listing.

Contains the following name value pairs:

  • auto_fulfillment.refresh_schedule

    • <num> MINUTE - Number of minutes. Minimum 10 minutes, maximum 8 days, or 11520 minutes.

      If refresh_type is specified as SUB_DATABASE_WITH_REFERENCE_USAGE, do not include this setting. The refresh schedule for application packages must be defined at the account level and cannot specified at the listing level.

      For more information see Aktualisierungsintervall auf Kontoebene festlegen.

  • USING CRON <expression> - Defines the data product auto-fulfillment refresh schedule.

    The syntax for USING CRON and REPLICATION SCHEDULE are the same. See Parameter.

  • auto_fulfillment.refresh_type (required when using auto_fulfillment): Must be one of -

    • SUB_DATABASE - database replication (object level) - recommended.

    • SUB_DATABASE_WITH_REFERENCE_USAGE - application package.

    • FULL_DATABASE - database replication (for the entire database)

  • auto_fulfillment.refresh_schedule_override (optional): Overrides the defined update refresh frequency for all listings that use the same database. When this value is FALSE, listing updates fail when multiple listings sharing the same database have different refresh frequencies.

    • TRUE - enables the refresh frequency override.

    • FALSE - (default) disables the refresh frequency override.

See also Automatische Ausführung für Freigabeangebote.

auto_fulfillment.refresh_schedule examples

The following example refreshes the data product associated with a listing every 10 minutes:

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

The following example refreshes the data product associated with a listing on specific days and times in specific regions:

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

The following example enables the refresh frequency override for listings that share the same database but have different refresh frequencies:

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

Snowflake Native App auto_fulfillment example

SUB_DATABASE_WITH_REFERENCE_USAGE can only be used with application packages and cannot be combined with auto_fulfillment.refresh_schedule.

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

Object level auto_fulfillment example

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