Modèles¶
Les modèles sont des modèles de salle blanche JinjaSQL pouvant être exécutés par des collaborateurs spécifiés. Tout collaborateur peut partager un modèle avec les collaborateurs d’une collaboration. Vous pouvez demander d’ajouter ou de supprimer uniquement les modèles enregistrés sur votre compte.
Poursuivez la lecture pour voir comment enregistrer et ajouter un modèle à une collaboration :
Enregistrer un modèle¶
Suivez les étapes suivantes pour enregistrer un modèle :
Concevez un modèle pour la collaboration et intégrez-le dans une spécification du modèle.
Enregistrez le modèle en appelant REGISTER_TEMPLATE. Cela renvoie un ID de modèle que vous utiliserez pour lier le modèle.
Une fois le modèle enregistré, il peut être lié à une collaboration par toute personne ayant un accès en lecture à ce registre.
Ajouter un modèle¶
Le processus de demande d’ajout de modèles dépend de l’existence ou non de la collaboration.
Pour ajouter un modèle avant la création de la collaboration, indiquez l’ID de modèle au propriétaire de la collaboration, qui l’inclut dans la spécification de collaboration, en spécifiant qui peut exécuter le modèle. Dans l’extrait de collaboration suivant,
alicese voit accorder l’accès pour exécuter le modèlebob_template_v1.
Pour ajouter un modèle dans une collaboration existante, vous envoyez une demande à tous les partages potentiels en suivant les étapes suivantes :
Appelez ADD_TEMPLATE_REQUEST avec l’ID de modèle pour démarrer le flux d’approbation afin d’ajouter le modèle à une collaboration spécifique, pour des utilisateurs spécifiques.
Tous les collaborateurs concernés par le modèle voient la demande lorsqu’ils appellent VIEW_UPDATE_REQUESTS.
Les collaborateurs qui voient la demande avec le statut PENDING_MY_APPROVAL doivent appeler APPROVE_UPDATE_REQUEST ou REJECT_UPDATE_REQUEST.
Si un collaborateur rejette la demande, la demande de mise à jour est rejetée.
Les collaborateurs ne peuvent pas modifier ultérieurement une approbation en un rejet, ni un rejet en une approbation.
Le modèle ne sera pas partagé tant que toutes les parties sollicitées n’auront pas approuvé la requête.
Les collaborateurs ne peuvent pas modifier ultérieurement une approbation en un rejet, ni un rejet en une approbation.
Une fois l’approbation approuvée, le statut devient PENDING_PARTNER_APPROVAL si d’autres collaborateurs doivent encore approuver.
Lorsque tous les collaborateurs requis ont approuvé, le statut devient APPROVED et la mise à jour est appliquée automatiquement. Les statuts du terminal pour une demande de mise à jour sont les suivants COMPLETED et FAILED. Lorsque le statut de la demande est COMPLETED, le modèle est disponible pour les utilisateurs spécifiés dans la demande d’ajout de modèle. Si la demande est FAILED, voir la colonne DETAILS dansVIEW_UPDATE_REQUESTS pour les détails de l’échec. Si un collaborateur rejette la demande, le statut est REJECTED et toute raison fournie par ce collaborateur est visible dans le rapport de requête.
Un court délai peut s’écouler entre l’approbation du modèle par tous les utilisateurs et la disponibilité du modèle. Appelez VIEW_TEMPLATES pour confirmer que le modèle est disponible pour être utilisé.
Astuce
Pour voir les modèles que vous avez enregistrés, appelez VIEW_REGISTERED_TEMPLATES.
Consultez Effectuer une analyse pour savoir comment exécuter une analyse.
Conception de modèle¶
Les modèles de collaboration sont identiques aux modèles de salle blanche pour les fournisseurs et les consommateurs, à quelques exceptions près :
La variable
source_tabledu modèle est alimentée par les offres de données de la collaboration. Dans la plupart des modèles de collaboration,source_tableest la seule variable de source de données utilisée.La variable
my_tabledu modèle est utilisée uniquement lorsqu’un exécuteur d’analyses utilise Snowflake Standard Edition et ne peut pas fournir d’offres de données à une collaboration.Les colonnes des sources de données d’origine peuvent être renommées lorsqu’elles sont exposées au modèle ou à l’utilisateur. Voir Renommage de colonne source pour savoir comment et quand les colonnes sources sont renommées. Les modèles et les arguments fournis par l’utilisateur (tels qu’un nom de colonne de jointure) doivent utiliser le nom final et non le nom d’origine si la colonne est renommée.
Les modèles d’activation dans une collaboration n’ont pas besoin d’être nommés
activation_<template_name>. Toutes les autres exigences du modèle d’activation continuent de s’appliquer.
Pour plus d’informations sur la syntaxe des modèles personnalisés dans Snowflake Data Clean Rooms, consultez Concevoir des modèles personnalisés.