Référence au manifeste d’annonce

La création d’annonces Snowflake de manière programmatique nécessite un manifeste, écrit au format YAML (https://yaml.org/spec/). Utilisez les informations fournies ici pour en savoir plus sur le format du manifeste et ses sections individuelles.

Voir aussi :

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

Note

Les champs peuvent être n’importe lequel des éléments suivants :

  • Facultatif - Facultatif pour les annonces marketplace ou les annonces privées.

  • Obligatoire - Obligatoire pour les annonces marketplace ou les annonces privées.

  • Qualifié - Les exigences varient selon qu’il s’agit d’annonces marketplace ou d’annonces privées, et la distinction entre facultatif et obligatoire est qualifiée par le (dépend du) type d’annonce. Par exemple, facultatif pour les annonces privées, mais obligatoire pour les annonces marketplace.

Le format général d’un manifeste d’annonce est le suivant :

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

Les sections suivantes détaillent chaque champ de manifeste d’annonce, les champs enfants, et fournissent des exemples associés.

Préfixe d’annonce

Chaque manifeste d’annonce commence par les champs suivants :

  • title (Chaîne, obligatoire, longueur maximale 110) : titre de l’annonce.

  • subtitle (Chaîne, facultative pour les annonces privées, obligatoire pour les annonces marketplace, longueur maximale 110) : sous-titre de l’annonce.

  • description (Chaîne, obligatoire, longueur maximale 7 500) : description de l’annonce.

  • custom_contact (Chaîne, facultative) : e-mail. Il doit s’agir d’une adresse e-mail valide et correctement formée.

  • profile (Chaîne, facultative pour les annonces privées, obligatoire pour les annonces marketplace) : nom d’un profil de fournisseur approuvé.

Pour plus d’informations, voir : Informations de base sur le fournisseur.

Note

Les valeurs de profile peuvent être trouvées via l’exécution de show profiles in data exchange SNOWFLAKE_DATA_MARKETPLACE;.

Exemple de préfixe d’annonce

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

Le champ obligatoire listing_terms (obligatoire) contient les paires nom/valeur suivantes :

  • listing_terms.type (énumération, obligatoire) : doit être l’un des éléments suivants :

    • STANDARD - Fait référence à l’Accord standard pour les produits Marketplace.

    • OFFLINE - Indique que les conditions sont négociées hors ligne par les parties.

    • CUSTOM - Lorsque cette option est spécifiée, vous devez fournir une valeur pour listing_terms.link.

  • listing_terms.link (obligatoire lorsque le type est CUSTOM) : lien complet vers les conditions de l’annonce du fournisseur, qui doit commencer par http ou par https.

Pour plus d’informations, voir Conditions de service dans le tableau dans Informations de base.

Note

Les consommateurs peuvent accepter les conditions des annonces par programmation. Pour plus d’informations, contactez l’Assistance de Snowflake.

Exemple listing_terms

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

targets

Le champ targets est obligatoire pour les annonces marketplace et les annonces privées.

Contient une liste de 100 éléments maximum :

  • targets.accounts (obligatoire si targets.region n’est pas présent) : liste des comptes avec lesquels partager l’annonce.

    Chaque compte cible doit être au format <OrgName>.<AccountName>, où :

ou

  • targets.regions (obligatoire si targets.accounts n’est pas présent) :

    Liste des régions avec lesquelles partager l’annonce.

    Chaque région cible doit se présenter au format « type_de_groupe_de_régions.région_snowflake ». En outre, « ALL » est pris en charge pour inclure toutes les régions.

    Par exemple « PUBLIC.AWS_US_EAST_1 ».

    Pour une liste complète des types de groupe de régions et des régions Snowflake, exécutez :

    SHOW REGIONS IN DATA EXCHANGE SNOWFLAKE_DATA_MARKETPLACE;
    
    Copy

Pour plus d’informations, voir Comptes de consommateurs (annonces privées uniquement).

Exemples targets

Définissez un ensemble de comptes cibles pour cette annonce.

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

Définissez un ensemble de régions cibles pour cette annonce.

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

auto_fulfillment

L’exécution automatique inter-Cloud permet au produit de données associé à une annonce d’être automatiquement exécuté dans d’autres régions Snowflake. Le champ auto_fulfillment définit les modalités de cette exécution automatique.

Pour plus d’informations sur l’exécution automatique inter-Cloud, voir Configurer l’exécution automatique inter-Cloud.

Facultatif uniquement si vous faites partie d’un partage avec des comptes de la même région ; sinon, obligatoire.

Le champ auto_fulfillment est :

  • Obligatoire si votre produit de données est un paquet d’application.

  • Obligatoire pour les annonces privées si les comptes cibles se trouvent en dehors de la région du fournisseur.

  • Facultatif, mais recommandé pour les annonces marketplace si votre produit de données est un partage.

Contient les paires nom/valeur suivantes :

  • auto_fulfillment.refresh_schedule

    • <num> MINUTE - Nombre de minutes. Minimum 10 minutes, maximum 8 jours, ou 11 520 minutes.

      Si refresh_type est spécifié comme SUB_DATABASE_WITH_REFERENCE_USAGE, n’incluez pas ce paramètre. La planification d’actualisation des paquets d’application doit être défini au niveau du compte et ne peut pas être spécifié au niveau de l’annonce.

      Pour plus d’informations, voir Définir la fréquence d’actualisation au niveau du compte.

    • USING CRON <expression> - Définit le calendrier d’actualisation de l’exécution automatique du produit de données.

      La syntaxe pour USING CRON et REPLICATION SCHEDULE est la même. Voir Paramètres CREATE REPLICATION GROUP.

  • auto_fulfillment.refresh_type (obligatoire lors de l’utilisation de auto_fulfillment) : doit être l’un des éléments suivants -

    • SUB_DATABASE - réplication de base de données (au niveau de l’objet) - recommandée.

    • SUB_DATABASE_WITH_REFERENCE_USAGE - paquet d’application.

    • FULL_DATABASE - réplication de base de données (pour toute la base de données)

  • auto_fulfillment.refresh_schedule_override (facultatif) : remplace la fréquence d’actualisation de mise à jour définie pour toutes les annonces qui utilisent la même base de données. Lorsque cette valeur est FALSE, les mises à jour des annonces échouent lorsque plusieurs annonces partageant la même base de données ont des fréquences d’actualisation différentes.

    • TRUE - active le remplacement de la fréquence d’actualisation.

    • FALSE - (par défaut) désactive le remplacement de la fréquence d’actualisation.

Voir aussi Configurer l’exécution automatique inter-Cloud.

Exemples auto_fulfillment.refresh_schedule

L’exemple suivant actualise le produit de données associé à une annonce toutes les 10 minutes :

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

L’exemple suivant actualise le produit de données associé à une annonce à des jours et à des heures spécifiques dans des régions spécifiques :

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

L’exemple suivant active le remplacement de la fréquence d’actualisation pour les annonces qui partagent la même base de données mais qui ont des fréquences d’actualisation différentes :

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

Exemple Snowflake Native App auto_fulfillment

SUB_DATABASE_WITH_REFERENCE_USAGE ne peut être utilisé qu’avec des paquets d’application et ne peut être combiné avec auto_fulfillment.refresh_schedule.

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

Exemple auto_fulfillment (au niveau de l’objet)

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

business_needs

Les annonces sont regroupées par besoins commerciaux pour faciliter la recherche. Le besoin commercial est une description de la manière dont une annonce spécifique répond à un besoin commercial donné. Pour plus d’informations, voir Besoins commerciaux.

Besoins commerciaux STANDARD

  • business_needs.name (obligatoire lors de l’utilisation de business_needs) :

    Les valeurs valides incluent :

    • « Vision client à 360 degrés »

    • « Chaîne d’approvisionnement »

    • « Personnalisez les expériences client »

    • « Gestion des stocks »

    • « Accélération des revenus publicitaires »

    • « Analyse d’attribution »

    • « Enrichissement des données de contact »

    • « Analyse du flux piéton »

    • « Segmentation de l’audience »

    • « Analyse des sentiments »

    • « Analyse des investissements ESG »

    • « Analyses fondamentales »

    • « Analyses quantitatives »

    • « Analyse des risques »

    • « Lutte contre la fraude »

    • « Intégration client »

    • « Résolution d’identité »

    • « Évaluation des actifs »

    • « Analyse des conséquences économiques »

    • « Prévision des demandes »

    • « Gestion de la santé publique »

    • « Données réelles (RWD) »

    • « Planification d’emplacement »

    • « Rapports réglementaires »

    • « Acquisition et fidélisation des abonnés »

    • « Commercialisation des sciences de la vie »

    • « Vue patient à 360° »

    • « Analyse des blockchains »

    • « Acquisition de clients »

    • « Qualité et nettoyage des données »

    • « Enrichissement des données d’emplacement »

    • « Géocodage d’emplacement »

    • « Machine Learning »

    • « Analyse des marchés »

    • « Analyse des prix »

    • « Activation de l’audience »

business_needs[].description (obligatoire lors de l’utilisation de business_needs) : description des besoins commerciaux associés au format besoins_commerciaux.nom, longueur maximale 1 000.

business_needs[].type : STANDARD (facultatif).

Besoins commerciaux CUSTOM

Les besoins commerciaux personnalisés comprennent un champ défini par l’utilisateur name, description, et un champ obligatoire type avec la valeur CUSTOM.

business_needs.name (obligatoire lors de l’utilisation de business_needs) : nom défini par l’utilisateur.

business_needs[].description (obligatoire lors de l’utilisation de business_needs) : description des besoins commerciaux associés au format besoins_commerciaux.nom, longueur maximale 1 000.

business_needs[].type : CUSTOM (obligatoire lors de la définition de besoins commerciaux personnalisés).

Exemples business_needs

Standard sans type facultatif

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

Standard avec type facultatif

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

Personnalisé avec type obligatoire

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

categories

Le champ categories spécifie la catégorie ou le domaine de l’annonce. Les catégories sont facultatives pour les annonces privées, mais obligatoires pour les annonces marketplace.

Les catégories sont utilisées dans Snowflake Marketplace pour parcourir les annonces par domaine et aider les consommateurs à trouver vos données.

Le champ categories est une liste, mais ne peut contenir qu’une seule entrée, parmi l’ensemble ci-dessous :

  • BUSINESS

  • CONNECTORS

  • DEMOGRAPHICS

  • ECONOMY

  • ENERGY

  • ENVIRONMENT

  • FINANCIAL

  • GOVERNMENT

  • HEALTH

  • IDENTITY

  • LEGAL

  • LOCAL

  • LOOKUP_TABLES

  • MARKETING

  • MEDIA

  • SECURITY

  • SPORTS

  • TRANSPORTATION

  • TRAVEL

  • WEATHER

Exemple categories

. . .
categories:
 - ECONOMY
. . .
Copy

data_attributes

Les attributs de données fournissent aux consommateurs des indices sur les informations concernant l’annonce, comme que le taux d’actualisation et d’autres caractéristiques.

Le champ data_attributes est facultatif pour les annonces privées, mais obligatoire pour les annonces marketplace.

Pour des informations supplémentaires sur les attributs des produits de données, voir Produit de données - Attributs.

Contient les paires nom/valeur suivantes :

  • data_attributes.refresh_rate (obligatoire)

    Spécifie la fréquence à laquelle votre produit de données est mis à jour dans Snowflake.

    Une des options :

    • CONTINUOUSLY

    • HOURLY

    • DAILY

    • WEEKLY

    • MONTHLY

    • QUARTERLY

    • ANNUALLY

    • STATIC

  • data_attributes.geography (obligatoire), contenant :

    Spécifie les régions géographiques couvertes par votre produit de données.

    • granularity (chaîne, obligatoire)

      Couverture géographique de votre ensemble de données.

      Une des options :

      • LATITUDE_LONGITUDE

      • ADDRESS

      • POSTAL_CODE

      • CITY

      • COUNTY

      • STATE

      • COUNTRY

      • REGION_CONTINENT

    • geo_option (chaîne, obligatoire)

      Une des options :

      • NOT_APPLICABLE

      • GLOBAL

      • COUNTRIES

    • coverage (obligatoire suivant la sélection de geo_option), contenant soit :

      • states (liste de chaînes) contenant n’importe quelle liste de noms d’états américains valides.

      Or

      • continents (liste de chaînes) :

        N’importe laquelle des valeurs suivantes :

        • ASIA

        • EUROPE

        • AFRICA

        • NORTH AMERICA

        • SOUTH AMERICA

        • OCEANIA

        • ANTARCTICA

    • time (obligatoire) contenant :

      Spécifie la période couverte par votre produit de données.

      • granularity (obligatoire)

      Une des options :

      • EVENT_BASED

      • HOURLY

      • DAILY

      • WEEKLY

      • MONTHLY

      • YEARLY

      • time_range (obligatoire) contenant les paires nom/valeur suivantes :

        • time_frame (obligatoire)

          Une des options :

          • NEXT

          • LAST

          • BETWEEN

        • unit (obligatoire)

          Une des options :

          • DAYS

          • WEEKS

          • MONTHS

          • YEARS

        • value (obligatoire lorsque time_frame est NEXT/LAST, entier), plage 1-100.

        • start_time (obligatoire lorsque time_frame est BETWEEN, date sous forme de chaîne), format MM-DD-YYYY.

        • end_time (obligatoire lorsque time_frame est BETWEEN, date sous forme de chaîne), format MM-DD-YYYY.

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

data_dictionary

Le champ data_dictionary fournit aux consommateurs des indices sur le contenu et la structure d’une annonce avant qu’ils ne l’installent dans leur compte. Il est facultatif pour les annonces privées, mais obligatoire pour les annonces marketplace.

Le champ data_dictionary contient une liste de cinq entrées de dictionnaire de données maximum :

  • data_dictionary.featured (obligatoire lors de l’utilisation de data_dictionary) : doit être « featured » (en vedette).

  • data_dictionary.featured.database (obligatoire lors de l’utilisation de data_dictionary) : nom de base de données.

  • data_dictionary.featured.objects (obligatoire lors de l’utilisation de data_dictionary) : liste de paires nom/valeur -

    • name (chaîne, obligatoire) : nom d’objet

    • schema (chaîne, obligatoire) : schéma

    • domain (obligatoire) :

      Une des options :

      • DATABASE

      • SCHEMA

      • TABLE

      • VIEW

      • EXTERNAL_TABLE

      • MATERIALIZED_VIEW

      • DIRECTORY_TABLE

      • FUNCTION

      • COLUMN

Voir aussi Produit de données : dictionnaire de données.

Exemple data_dictionary

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

usage_examples

Le champ usage_examples est facultatif pour les annonces privées, mais obligatoire pour les annonces marketplace.

Contient une liste des paires nom/valeur suivantes :

  • usage.title (chaîne, obligatoire) : titre d’exemple d’utilisation, longueur maximale 110 caractères.

  • usage.description (chaîne, facultative) : description associée, longueur maximale 300 caractères.

  • usage.query (chaîne, obligatoire) : requête associée à l’exemple d’utilisation, longueur maximale 30 000 caractères.

Pour plus d’informations, voir Exemple de requêtes SQL.

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

resources

Les ressources contiennent des informations sur l’annonce, notamment des liens vers la documentation et une vidéo.

Le champ resources est facultatif pour les annonces privées, mais obligatoire pour les annonces marketplace.

Contient les paires nom/valeur suivantes :

  • resources.documentation (chaîne, obligatoire) : lien complet vers une page de votre site Internet avec une documentation plus détaillée sur l’annonce. Doit commencer par http ou par https.

  • resources.media (chaîne, facultative) : lien complet vers une vidéo YouTube publique ou non officielle de l’annonce.

Pour plus d’informations, voir Détails de l’annonce.

Exemple resources

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

Exemple YAML complet d’annonce de partage de données

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