Referenz zum Freigabeangebots-Manifest

Für das programmgesteuerte Erstellen von Snowflake-Freigabeangeboten ist eine Manifest erforderlich, das in YAML (https://yaml.org/spec/) geschrieben ist. Nutzen Sie die hier bereitgestellten Informationen, um sich über das Format des Manifests und seine einzelnen Abschnitte zu informieren.

Siehe auch:

CREATE LISTING, ALTER LISTING, DESCRIBE LISTING, SHOW LISTINGS, DROP LISTING

Bemerkung

Felder können Folgendes sein:

  • Optional – Optional entweder für Marketplace-Angebote oder private Angebote.

  • Erforderlich – Erforderlich entweder für Marketplace-Angebote oder private Angebote.

  • Qualifiziert – Anforderungen unterscheiden sich für Marketplace-Angebote und private Angebote, und optional vs. erforderlich ist je nach Angebotstyp unterschiedlich. Zum Beispiel optional für private Angebote, aber erforderlich für Marketplace-Angebote.

Das allgemeine Format einer Angebots-Manifest-Datei ist wie folgt:

#
# Listing prefix
#
title: <listing title>
subtitle: <Optional listing subtitle>
description: <listing description>
profile : <Optional name of the provider profile>

listing_terms:
  - # Required listing terms that the consumer must sign
auto_fulfillment:
  - # Required when the target accounts are outside the provider's region, otherwise optional.
data_dictionary:
  - # Optional data dictionary
business_needs:
  - # Optional <List>BusinessNeed elements, maximum 6.
usage_examples:
  - # Optional <List>UsageExample elements, maximum 10.
targets:
  - # Required <List> Consumer accounts to target with this private listing
Copy

In den folgenden Abschnitten werden die einzelnen Felder und untergeordneten Felder des Angebots-Manifests ausführlich beschrieben und mit Beispielen versehen.

Angebots-Präfix

Jedes Angebots-Manifest beginnt mit den folgenden Feldern:

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

  • subtitle (String, optional für privat, erforderlich für Marketplace, max. 110 Zeichen): Untertitel des Freigabeangebots.

  • description (String, erforderlich, max. 7.500 Zeichen): Beschreibung des Freigabeangebots.

  • custom_contact (String, optional): E-Mail-Adresse. Muss eine gültige, wohlgeformte E-Mail-Adresse sein.

  • profile (String, optional für private, erforderlich für Marketplace-Angebote): Name eines genehmigten Anbieterprofils.

Weitere Informationen dazu finden Sie unter Basisinformationen zu Anbietern.

Bemerkung

Werte für profile können durch Ausführung von show profiles in data exchange SNOWFLAKE_DATA_MARKETPLACE; ermittelt werden.

Beispiel für ein Angebots-Präfix

title: Weather information
subtitle: Historical weather by postcode.
description: This listing includes historical weather data by post code.
profile: My provider profile
Copy

listing_terms

Das erforderliche Feld listing_terms (erforderlich) enthält die folgenden Name/Wert-Paare:

  • listing_terms.type (enum, erforderlich): Muss einer der Folgenden sein:

    • STANDARD – Verweist auf Standardvereinbarung für Marketplace-Produkte

    • OFFLINE – Zeigt an, dass die Bedingungen von den Parteien offline ausgehandelt werden.

    • CUSTOM – Wenn angegeben, muss ein Wert für listing_terms.link spezifiziert werden.

  • listing_terms.link (erforderlich bei Typ CUSTOM): Ein vollqualifizierter Link zu den Angebotsbedingungen des Anbieters. Muss mit http oder https beginnen.

Weitere Informationen finden Sie im Abschnitt Nutzungsbedingungen 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

targets

Das Feld targets ist für Marketplace- und private Angebote erforderlich.

Enthält eine Liste mit maximal 100 Elementen:

  • targets.accounts (erforderlich, wenn targets.region nicht vorhanden ist): Liste der Konten, für die das Angebot freigegeben werden soll.

    Jedes Zielkonto muss im Format <OrgName>.<AccountName> vorliegen, wobei

oder

  • targets.regions (erforderlich, wenn targets.accounts nicht vorhanden ist):

    Liste der Regionen, für die das Angebot freigegeben werden soll.

    Jede Zielregion muss das Format „Regionsgruppentyp.Snowflake-Region“ haben. Darüber hinaus wird „ALL“ unterstützt, um alle Regionen einzubeziehen.

    Beispiel: „PUBLIC.AWS_US_EAST_1“.

    Um eine vollständige Liste der Regionsgruppen-Typen und Snowflake-Regionen zu erhalten, führen Sie Folgendes aus:

    SHOW REGIONS IN DATA EXCHANGE SNOWFLAKE_DATA_MARKETPLACE;
    
    Copy

Weitere Informationen dazu finden Sie unter Verbraucherkonten (nur private Freigabeangebote).

targets-Beispiele

Definieren Sie eine Menge von Zielkonten für dieses Freigabeangebot.

. . .
targets:
   accounts: ["Org1.Account1", "Org2.Account2"]
. . .
Copy

Definieren Sie eine Menge von Zielregionen für dieses Freigabeangebot.

. . .
targets:
   regions: ["PUBLIC.AWS_US_EAST_1", "PUBLIC.AZURE_WESTUS2"]
. . .
Copy

auto_fulfillment

Die Cloud-übergreifende automatische Ausführung ermöglicht es, das mit einem Angebot verknüpfte Datenprodukt automatisch in anderen Snowflake-Regionen bereitzustellen. Das Feld auto_fulfillment definiert, wie diese automatische Auftragsausführung erfolgen soll.

Weitere Informationen zur Cloud-übergreifenden automatische Ausführung finden Sie unter Cloud-übergreifende automatische Ausführung

Nur dann optional, wenn Sie Konten in derselben Region freigeben, ansonsten erforderlich.

Für das Feld auto_fulfillment gilt:

  • Erforderlich, wenn Ihr Datenprodukt ein Anwendungspaket ist.

  • Erforderlich bei privaten Angeboten, wenn die Zielkonten außerhalb der Region des Anbieters liegen.

  • Optional, aber empfohlen für Marketplace-Angebote, wenn Ihr Datenprodukt eine Freigabe ist.

Enthält die folgenden Name/Wert-Paare:

  • auto_fulfillment.refresh_schedule

    • <num> MINUTE – Anzahl der Minuten. Minimal 10 Minuten, maximal 8 Tage (11.520 Minuten).

      Wenn refresh_type den Wert SUB_DATABASE_WITH_REFERENCE_USAGE hat, nehmen Sie diese Einstellung nicht vor. Der Aktualisierungszeitplan für Anwendungspakete muss auf Kontoebene definiert werden und nicht auf Ebene des Freigabeangebots.

      Weitere Informationen dazu finden Sie unter Aktualisierungshäufigkeit auf Kontoebene festlegen.

    • USING CRON <expression> – Legt den Zeitplan für die automatische Aktualisierung von Produkten fest.

      Die Syntax für USING CRON und REPLICATION SCHEDULE ist die gleiche. Siehe CREATE REPLICATION GROUP Parameter.

  • auto_fulfillment.refresh_type (erforderlich bei Verwendung von auto_fulfillment): Muss einer der folgenden Werte sein:

    • SUB_DATABASE – Replikation von Datenbanken (Objektebene) – empfohlen.

    • SUB_DATABASE_WITH_REFERENCE_USAGE – Anwendungspaket.

    • FULL_DATABASE – Replikation der Datenbank (für die gesamte Datenbank)

  • auto_fulfillment.refresh_schedule_override (optional): Setzt die definierte Aktualisierungsfrequenz für alle Freigabeangebote außer Kraft, die dieselbe Datenbank verwenden. Wenn dieser Wert FALSE ist, schlägt die Aktualisierung von Freigabeangeboten fehl, wenn mehrere Freigabeangeboten, die sich dieselbe Datenbank teilen, unterschiedliche Aktualisierungsfrequenzen haben.

    • TRUE – aktiviert die Überschreibung der Aktualisierungsfrequenz.

    • FALSE – (Standard) deaktiviert die Überschreibung der Aktualisierungsfrequenz.

Siehe auch Cloud-übergreifende automatische Ausführung.

auto_fulfillment.refresh_schedule-Beispiele

Das folgende Beispiel aktualisiert das mit einem Freigabeangebot verbundene Datenprodukt alle 10 Minuten:

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

Das folgende Beispiel aktualisiert das mit einem Freigabeangebot verbundene Datenprodukt an bestimmten Tagen und zu bestimmten Zeiten in bestimmten Regionen:

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

Das folgende Beispiel aktiviert die Überschreibung der Aktualisierungsfrequenz für Freigabeangebote, die dieselbe Datenbank nutzen, aber unterschiedliche Aktualisierungsfrequenzen haben:

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

Snowflake Native App auto_fulfillment-Beispiel

SUB_DATABASE_WITH_REFERENCE_USAGE kann nur mit Anwendungspaketen verwendet werden und kann nicht mit auto_fulfillment.refresh_schedule kombiniert werden.

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

Beispiel auf Objektebene auto_fulfillment

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

business_needs

Freigabeangebote sind nach Geschäftsanforderungen gruppiert, um die Suche zu erleichtern. Eine Geschäftsanforderung beschreibt, wie ein bestimmtes Angebot einem bestimmten Geschäftsbedarf entspricht. Weitere Informationen dazu finden Sie unter Geschäftsanforderungen.

STANDARD-Geschäftsanforderungen

  • business_needs.name (erforderlich bei Verwendung von business_needs):

    Gültige Werte:

    • „360-Degree Customer View“

    • „Supply Chain“

    • „Personalize Customer Experiences“

    • „Inventory Management“

    • „Accelerating Advertising Revenue“

    • „Attribution Analysis“

    • „Contact Data Enrichment“

    • „Foot Traffic Analytics“

    • „Audience Segmentation“

    • „Sentiment Analysis“

    • „ESG Investment Analysis“

    • „Fundamental Analysis“

    • „Quantitative Analysis“

    • „Risk Analysis“

    • „Fraud Remediation“

    • „Customer Onboarding“

    • „Identity Resolution“

    • „Asset Valuation“

    • „Economic Impact Analysis“

    • „Demand Forecasting“

    • „Population Health Management“

    • „Real World Data (RWD)“

    • „Location Planning“

    • „Regulatory Reporting“

    • „Subscriber Acquisition and Retention“

    • „Life Sciences Commercialization“

    • „Patient 360“

    • „Blockchain Analysis“

    • „Customer Acquisition“

    • „Data Quality and Cleansing“

    • „Location Data Enrichment“

    • „Location Geocoding“

    • „Machine Learning“

    • „Market Analysis“

    • „Pricing Analysis“

    • „Audience Activation“

business_needs[].description (erforderlich bei Verwendung von business_needs): Beschreibung des zugehörigen „business_needs.name“, max. 1.000 Zeichen.

business_needs[].type: STANDARD (optional).

CUSTOM-Geschäftsanforderungen

Kundenspezifischen Geschäftsanforderungen umfassen ein benutzerdefinierte Wert für name und description sowie ein erforderliches Feld type mit dem Wert CUSTOM.

business_needs.name (erforderlich bei Verwendung von business_needs): Vom Benutzer definierter Name.

business_needs[].description (erforderlich bei Verwendung von business_needs): Beschreibung des zugehörigen „business_needs.name“, max. 1.000 Zeichen.

business_needs[].type: CUSTOM (erforderlich bei der Definition kundenspezifischer Geschäftsanforderungen).

business_needs-Beispiele

Standard ohne optionalem type

. . .
business_needs:
 - name: "Real World Data (RWD)"
   description: "Global weather data"
. . .
Copy

Standard mit optionalem type

. . .
business_needs:
 - name: "Real World Data (RWD)"
   description: "Global weather data"
   type: STANDARD
. . .
Copy

Kundenspezifisch mit erforderlichem type

. . .
business_needs:
 - name: "Machinery Maintenance"
   description: "Repair and maintenance data for machinery"
   type: CUSTOM
. . .
Copy

categories

Das Feld categories gibt die Kategorie oder den Bereich an, zu dem das Angebot gehört. Kategorien sind optional für private Angebote, aber erforderlich für Marketplace-Angebote.

Kategorien werden in Snowflake Marketplace verwendet, um Angebote nach Bereichen zu durchsuchen und Verbrauchern das Auffinden Ihrer Daten zu erleichtern.

Das Feld categories ist eine Liste, kann aber nur einen einzigen Eintrag aus der folgenden Liste enthalten:

  • BUSINESS

  • CONNECTORS

  • DEMOGRAPHICS

  • ECONOMY

  • ENERGY

  • ENVIRONMENT

  • FINANCIAL

  • GOVERNMENT

  • HEALTH

  • IDENTITY

  • LEGAL

  • LOCAL

  • LOOKUP_TABLES

  • MARKETING

  • MEDIA

  • SECURITY

  • SPORTS

  • TRANSPORTATION

  • TRAVEL

  • WEATHER

categories-Beispiel

. . .
categories:
 - ECONOMY
. . .
Copy

data_attributes

Datenattribute geben Verbrauchern Einblick in Informationen zu einem Freigabeangebot, wie z. B. die Aktualisierungshäufigkeit und andere Eigenschaften.

Das Feld data_attributes ist optional für private Angebote, aber erforderlich für Marketplace-Angebote.

Weitere Informationen zu Datenproduktattributen finden Sie unter Datenprodukt – Attribute.

Enthält die folgenden Name/Wert-Paare:

  • data_attributes.refresh_rate (erforderlich)

    Gibt die Häufigkeit an, mit der Ihr Datenprodukt in Snowflake aktualisiert wird.

    Eine der folgenden Optionen:

    • CONTINUOUSLY

    • HOURLY

    • DAILY

    • WEEKLY

    • MONTHLY

    • QUARTERLY

    • ANNUALLY

    • STATIC

  • data_attributes.geography (erforderlich):

    Gibt die geografische Regionen an, für die Ihr Datenprodukt eine Abdeckung bietet.

    • granularity (string, erforderlich)

      Geografische Abdeckung Ihres Datensets.

      Eine der folgenden Optionen:

      • LATITUDE_LONGITUDE

      • ADDRESS

      • POSTAL_CODE

      • CITY

      • COUNTY

      • STATE

      • COUNTRY

      • REGION_CONTINENT

    • geo_option (string, erforderlich)

      Eine der folgenden Optionen:

      • NOT_APPLICABLE

      • GLOBAL

      • COUNTRIES

    • coverage (erforderlich auf Basis der Auswahl von geo_option), ist entweder:

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

      Or

      • continents (String-Liste):

        Eine der folgenden Optionen:

        • ASIA

        • EUROPE

        • AFRICA

        • NORTH AMERICA

        • SOUTH AMERICA

        • OCEANIA

        • ANTARCTICA

    • time (erforderlich):

      Gibt den Zeitraum an, den Ihr Datenprodukt abdeckt.

      • granularity (erforderlich)

      Eine der folgenden Optionen:

      • EVENT_BASED

      • HOURLY

      • DAILY

      • WEEKLY

      • MONTHLY

      • YEARLY

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

        • time_frame (erforderlich)

          Eine der folgenden Optionen:

          • NEXT

          • LAST

          • BETWEEN

        • unit (erforderlich)

          Eine der folgenden Optionen:

          • DAYS

          • WEEKS

          • MONTHS

          • YEARS

        • value (erforderlich, wenn time_frame NEXT/LAST ist, integer), Bereich 1-100.

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

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

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

data_dictionary

Das Feld data_dictionary bietet Verbrauchern einen Einblick in Inhalt und Struktur eines Freigabeangebots, bevor sie dieses in ihrem Konto installieren. Das Feld ist optional für private Angebote, aber erforderlich für Marketplace-Angebote.

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“ (empfohlen) sein.

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

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

    • name (string, erforderlich): Objektname

    • schema (string, erforderlich): Schema

    • domain (erforderlich):

      Eine der folgenden Optionen:

      • DATABASE

      • SCHEMA

      • TABLE

      • VIEW

      • EXTERNAL_TABLE

      • MATERIALIZED_VIEW

      • DIRECTORY_TABLE

      • FUNCTION

      • COLUMN

Siehe auch 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 Feld usage_examples ist optional für private Angebote, aber erforderlich für Marketplace-Angebote.

Enthält eine Liste der folgenden Name/Wert-Paare:

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

  • usage.description (String, optional): Zugehörige Beschreibung, max. 300 Zeichen.

  • usage.query (String, erforderlich): Abfrage im Zusammenhang mit dem Verwendungsbeispiel, max. 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

resources

Die Ressourcen enthalten Informationen zu dem Freigabeangebot, einschließlich Links zur Dokumentation und zu einem Video.

Das Feld resources ist optional für private Angebote, aber erforderlich für Marketplace-Angebote.

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 (String, optional): Ein vollqualifizierter Link zu einem nicht aufgelisteten oder öffentlichen YouTube-Video zu dem Freigabeangebot.

Weitere Informationen dazu finden Sie unter Details zu einem Freigabeangebot.

resources-Beispiel

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

Vollständiges YAML-Beispiel für ein Datenfreigabeangebot

title: "Covid data listing"
subtitle: "Listing about covid"
description: "Example covid manifest"
profile: "MyProfile"
listing_terms:
  type: "STANDARD"
targets:
  accounts: ["Org1.Account1", "Org2.Account2"]
auto_fulfillment:
  refresh_schedule: "120 MINUTE"
  refresh_type: "SUB_DATABASE"
business_needs:
  - name: "Life Sciences Commercialization"
    description: "COVID-19 Epidemiological Data"
usage_examples:
  - title: "Get total case count by country"
    description: "Calculates the total number of cases by country, aggregated over time."
    query: "SELECT  COUNTRY_REGION, SUM(CASES) AS Cases FROM ECDC_GLOBAL GROUP BY COUNTRY_REGION;"
data_attributes:
  refresh_rate: HOURLY
  geography:
    granularity:
      - ADDRESS
    geo_option: COUNTRIES
    coverage:
      continents:
        ASIA:
          - INDIA
          - CHINA
        NORTH AMERICA:
          - UNITED STATES
          - CANADA
        EUROPE:
          - UNITED KINGDOM
  time:
    granularity: MONTHLY
    time_range:
      time_frame: BETWEEN
      start_date: 12-24-2020
      end_date: 12-25-2021
  resources:
    documentation: https://www.example.com/documentation/
    media: https://www.youtube.com/watch?v=MEFlT3dc3uc
categories:
 - HEALTH
Copy