Référence au manifeste de listing d’organisation

En tant que fournisseur, vous pouvez utiliser des listings d’organisations pour partager des produits de données en toute sécurité au sein de votre organisation. Un manifeste, écrit en YAML (https://yaml.org/spec/), est exigé pour créer des listings d’organisations par programme. Utilisez les informations fournies ici pour vous familiariser avec le format du manifeste et ses différents champs.

Les champs de listing d’organisations font partie du champ plus large Référence au manifeste d’annonce. Pour ajouter ou modifier les champs du listing d’organisations par programme, localisez et modifiez le manifeste du listing à l’aide des commandes DESCRIBE LISTING et ALTER LISTING.

Manifeste du listing d’organisations

Note

Les champs du listing d’organisations peuvent être l’un des suivants :

  • Facultatif - Facultatif pour le listing d’organisations.

  • Exigé - Exigé pour le listing d’organisations.

Le format général d’un listing d’organisations est le suivant :

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

Champs du listing d’organisations.

Les manifestes de listings d’organisations comprennent un préfixe, suivi d’un ensemble de champs obligatoires et facultatifs.

Préfixe de listing d’organisations

Chaque manifeste du listing d’organisations commence par les champs suivants :

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

  • description (Chaîne, facultatif, longueur maximale 7500) : Description du listing. La syntaxe Markdown est prise en charge.

  • resources (chaîne, facultatif) : Ressources du listing.

  • listing_terms (champs parent et enfant, facultatif) : Conditions du listing.

  • organization_profile (Chaîne, facultative) : e-mail. Profil d’organisation personnalisé facultatif. Si non spécifié, INTERNAL par défaut.

resources

Ressources pour le listing.

Le champ facultatif resources 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) : un lien complet vers une vidéo YouTube publique ou non répertoriée pour le listing.

Pour plus d’informations sur le type d’éléments que vous pouvez inclure dans ce champ, consultez Détails.

Exemple resources

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

listing_terms

Définit les conditions de service du listing.

Le champ facultatif listing_terms contient les paires nom-valeur suivantes :

  • listing_terms.type

    • CUSTOM : seul CUSTOM est pris en charge. Si listing_terms.type est spécifié, vous devez également spécifier une valeur pour listing_terms.link.

  • listing_terms.link: Un lien pleinement qualifié vers les termes du listing du fournisseur, qui doit commencer par http ou https.

Pour plus d’informations, reportez-vous à la section 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

data_dictionary

Le champ facultatif data_dictionary fournit des informations sur l’avant-première des données et les types de colonnes pour les objets du listing.

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

  • data_dictionary.featured.database (exigence pour l’utilisation de data_dictionary) : Le nom de la base de données.

  • data_dictionary.featured.objects (exigence pour l’utilisation de data_dictionary) : Une liste des paires nom-valeur suivantes :

    • name (chaîne, exigence) : Le nom de l’objet.

    • schema (chaîne, exigence) : Le schéma associé au dictionnaire de données.

    • domain (obligatoire) :

      Un des éléments suivants :

      • DATABASE

      • SCHEMA

      • TABLE

      • VIEW

      • EXTERNAL_TABLE

      • MATERIALIZED_VIEW

      • DIRECTORY_TABLE

      • FUNCTION

      • COLUMN

Pour plus d’informations, voir 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 facultatif **** usage_examples contient une liste des paires nom-valeur suivantes :

  • usage.title (Chaîne, exigence) : Le titre de l’exemple d’utilisation. La longueur maximale est de 110 caractères.

  • usage.description (chaîne, facultatif) : Une description de l’exemple d’utilisation. La longueur maximale est de 300 caractères.

  • usage.query (Chaîne, exigence) : La requête associée à l’exemple d’utilisation. La longueur maximale est de 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

data_attributes

Les attributs de données fournissent aux consommateurs des informations sur les listings.

Le champ facultatif data_attributes contient les paires nom-valeur suivantes :

  • data_attributes.refresh_rate (obligatoire)

    L’une des options suivantes : Spécifie la fréquence de mise à jour de votre produit de données dans Snowflake.

    • CONTINUOUSLY

    • HOURLY

    • DAILY

    • WEEKLY

    • MONTHLY

    • QUARTERLY

    • ANNUALLY

    • STATIC

  • data_attributes.geography (obligatoire) :

    Spécifie les informations géographiques pour le produit de données.

    • granularity (chaîne, obligatoire)

      Couverture géographique de l’ensemble de données.

      Un des éléments suivants :

      • LATITUDE_LONGITUDE

      • ADDRESS

      • POSTAL_CODE

      • CITY

      • COUNTY

      • STATE

      • COUNTRY

      • REGION_CONTINENT

    • geo_option (chaîne, obligatoire)

      Un des éléments suivants :

      • NOT_APPLICABLE

      • GLOBAL

      • COUNTRIES

    • coverage (exigence basée sur la sélection de geo_option) :

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

      Or

      • continents (liste des continents) :

        L’un des éléments suivants :

        • ASIA

        • EUROPE

        • AFRICA

        • NORTH AMERICA

        • SOUTH AMERICA

        • OCEANIA

        • ANTARCTICA

    • time (obligatoire) :

      Spécifie la période pour le produit de données.

      • granularity (obligatoire)

      Un des éléments suivants :

      • EVENT_BASED

      • HOURLY

      • DAILY

      • WEEKLY

      • MONTHLY

      • YEARLY

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

        • time_frame (obligatoire)

          Un des éléments suivants :

          • NEXT

          • LAST

          • BETWEEN

        • unit (obligatoire)

          Un des éléments suivants :

          • DAYS

          • WEEKS

          • MONTHS

          • YEARS

        • value (exigence lorsque time_frame est NEXT/LAST, entier). La plage est comprise entre 1 et 100.

        • start_time (exigence lorsque time_frame est BETWEEN, date de la chaîne). L’heure de début du produit de données. Le format est le suivant : MM-DD-YYYY.

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

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

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

organization_targets

Le champ obligatoire organization_targets définit qui peut découvrir le listing et y accéder.

Contient les champs discovery et access, dont l’un doit être spécifié.

discovery

Obligatoire lorsque access n’est pas spécifié, mais facultatif sinon. Définit qui peut découvrir l’annonce. Si non spécifié, aucun compte ne peut découvrir l’annonce.

access

Obligatoire lorsque discovery n’est pas spécifié, mais facultatif sinon. Définit qui peut accéder à l’annonce.

discovery et access contiennent les mêmes champs enfants.

Deux possibilités :

all_internal_accounts : {true | false}

Lorsque la valeur est définie sur true, tous les comptes internes peuvent trouver l’annonce ou y accéder. Lorsque la valeur est définie sur false, aucun compte ne peut trouver l’annonce ni y accéder.

Soit un tableau de comptes, suivi du tableau optionnel roles dans les comptes spécifiés.

- account: "<account_name>"

Lorsque roles est présent, il spécifie une liste de rôles au sein du compte qui peuvent accéder au listing ou le découvrir. Par exemple :

roles: [ 'role1','role2']

Exemples organization_target

Les exemples suivants présentent diverses combinaisons des champs discovery et access.

Tous les comptes internes de l’organisation peuvent découvrir l’annonce et y accéder

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

Découvrable mais accessible uniquement par des comptes limités

Tous les comptes internes de l’organisation peuvent découvrir l’annonce, mais seulement les comptes financiers peuvent y accéder.

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

Découvrable mais accessible uniquement par certains comptes

Tous les comptes internes de l’organisation peuvent découvrir l’annonce, mais seuls les comptes dans le compte financier ou de crédit peuvent y accéder.

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

Découvrable mais accessible uniquement par des comptes limités et des rôles spécifiques

Tous les comptes internes de l’organisation peuvent découvrir l’annonce, mais seuls les comptes du compte financier qui ont le rôle comptable ou débiteur peuvent y accéder.

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

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

support_contact

L’adresse électronique pour les informations d’assistance associées au listing.

Obligatoire lorsque le champ discovery est spécifié.

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

approver_contact

L’adresse électronique de l’approbateur du listing.

Obligatoire lorsque le champ discovery est spécifié.

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

request_approval_type

Définissez si les requêtes d’approbation et les approbations se produiront à l’intérieur ou à l’extérieur de Snowflake. Spécifie l’une des valeurs suivantes :

  • NULL

  • REQUEST_AND_APPROVE_IN_SNOWFLAKE indique que les demandes d’accès sont soumises et approuvées dans l’environnement Snowflake.

  • REQUEST_AND_APPROVE_OUTSIDE_SNOWFLAKE indique que le fournisseur gère les soumissions et les approbations de demandes d’accès de manière indépendante.

La valeur pour les annonces externes est toujours NULL.

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

locations

Spécifie les locations optionnels qui peuvent découvrir ou accéder au listing.

Le champ access_regions est obligatoire lorsque locations est spécifié et doit inclure l’un des sous-champs suivants :

  • ALL - Toutes les régions peuvent découvrir le listing ou y accéder.

  • Un tableau de noms de régions préfixés par PUBLIC qui peuvent découvrir le listing ou y accéder. Par exemple access_regions : - name : PUBLIC.AWS_US_WEST_2.

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

Pour une liste complète des régions, voir SHOW REGIONS.

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 Réplication automatique pour les annonces.

L’exécution automatique n’est obligatoire que si vous partagez des données avec plusieurs régions. Ne l’activez pas si vous partagez des données avec des comptes situés dans la même région.

Si vous partagez des données entre plusieurs régions, l”auto_fulfillment est :

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

  • Obligatoire si votre produit de données est partagé via une annonce privée.

  • Recommandée si votre produit de données est partagé via une annonce publique.

Contains the following name value pairs:

  • 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 l’intervalle 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.

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

    • 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) (Obsolète.)

  • 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 Réplication automatique pour les annonces.

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