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.
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 mithttpoderhttpsbeginnen.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
. . .
listing_terms¶
Legt die Nutzungsbedingungen für das Freigabeangebot fest.
Das optionale Feld listing_terms enthält die folgenden Name/Wert-Paare:
listing_terms.typeCUSTOM– NurCUSTOMwird unterstützt. Wennlisting_terms.typeangegeben ist, dann müssen Sie auch einen Wert füristing_terms.linkangeben.
listing_terms.link: Ein vollständig qualifizierter Link zu den Angebotsbedingungen des Anbieters, der mithttpoderhttpsbeginnen 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"
. . .
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 vondata_dictionary): muss „featured“ sein.data_dictionary.featured.database(erforderlich bei Verwendung vondata_dictionary): Der Name der Datenbank.data_dictionary.featured.objects(erforderlich bei Verwendung vondata_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"
. . .
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'";
. . .
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 vongeo_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, wenntime_frameNEXT/LAST ist, Ganzzahl). Der Bereich reicht von 1 bis 100.start_time(erforderlich, wenntime_frameBETWEEN ist, Zeichenfolgen-Datum). Die Startzeit für das Datenprodukt. Das Format ist MM-DD-YYYY.end_time(erforderlich, wenntime_frameBETWEEN 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
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.
discoveryErforderlich, wenn
accessnicht angegeben ist, aber ansonsten optional. Legt fest, wer das Freigabeangebot entdecken kann. Wenn nicht vorhanden, kann kein Konto das Freigabeangebot entdecken.accessErforderlich, wenn
discoverynicht 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
truelautet, können alle internen Konten das Freigabeangebot finden oder darauf zugreifen. Wenn der Wertfalselautet, kann kein Konto das Freigabeangebot finden oder darauf zugreifen.- Oder ein Array von Konten, gefolgt von dem optionalen Array
rolesinnerhalb 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
. . .
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'
. . .
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'
. . .
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']
. . .
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"
. . .
approver_contact¶
Die E-Mail-Adresse des Genehmigers des Freigabeangebots.
Erforderlich, wenn das discovery-Feld angegeben ist.
. . . approver_contact: "approver@exampledomain.com" . . .
request_approval_type¶
Define whether approval requests and approvals will happen inside or outside of Snowflake. Specify one of the following values:
NULLREQUEST_AND_APPROVE_IN_SNOWFLAKEindicates access requests are submitted and approved within the Snowflake environment.REQUEST_AND_APPROVE_OUTSIDE_SNOWFLAKEindicates 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" . . .
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
PUBLICvorangestellt ist und die das Freigabeangebot sehen oder darauf zugreifen können. Zum Beispielaccess_regions: - name: PUBLIC.AWS_US_WEST_2.. . . locations: access_regions: - name: "<names | ALL>" . . .
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_typeis specified asSUB_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 CRONandREPLICATION SCHEDULEare the same. See Parameter.auto_fulfillment.refresh_type(required when usingauto_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 isFALSE, 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
. . .
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
. . .
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
. . .
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
. . .
Object level auto_fulfillment example¶
. . .
listing_terms: . . .
. . .
auto_fulfillment:
refresh_type: SUB_DATABASE
. . .