Enregistrement des données

Cette rubrique décrit comment enregistrer des données afin qu’elles puissent être liées à un Snowflake Data Clean Room.

Objets pris en charge

Les types d’objets suivants peuvent être liés aux clean rooms :

Note

† Les tables externe et Iceberg doivent être activées avant de pouvoir être utilisées dans une clean room.

Enregistrement des objets de données

Avant que les utilisateurs puissent lier des données à un site Snowflake Data Clean Room, les données doivent d’abord être enregistrées. L’enregistrement des données accorde à USAGE et SELECT des privilèges sur l’objet à SAMOOHA_APP_ROLE, qui est utilisé par l’environnement de la clean room pour accéder aux données. Si vous enregistrez une base de données ou un schéma, tous les objets enfants sont également enregistrés. Vous devez disposer du privilège MANAGE GRANTS sur un objet pour pouvoir le lier.

Vous pouvez enregistrer des bases de données, des schémas et des objets en utilisant l’UI de clean room ou l’API de clean room. L’utilisation de l’UI de clean room est plus simple, mais nécessite que vous ayez le rôle ACCOUNTADMIN. En utilisant le développeur d’APIs, vous pouvez enregistrer n’importe quel objet sur lequel vous avez le privilège OWNERSHIP sans utiliser le rôle ACCOUNTADMIN.

Important

L’enregistrement d’une base de données ou d’un schéma n’enregistre pas les objets ajoutés après l’enregistrement. Vous devez soit enregistrer le nouvel objet individuellement, soit utiliser l’UI de clean room pour naviguer vers Admin > Snowflake Admin > Database Registration et sélectionner Resync.

Vous ne pouvez lier que les données enregistrées par votre compte. En d’autres termes, un fournisseur ne peut pas établir de lien entre les données enregistrées par le consommateur et un consommateur ne peut pas établir de lien entre les données enregistrées par le fournisseur. Une fois que les données sont liées dans une clean room, toute personne ayant accès à la clean room peut y accéder, sous réserve des paramètres de la partie qui établit le lien (tels que les politiques de jointure et de colonne).

Suivez les étapes ci-dessous pour enregistrer une base de données, un schéma ou un objet à l’aide de l’UI de clean room :

  1. Connectez-vous à l’UI de clean room en tant qu’administrateur de compte, puis effectuez l’une des opérations suivantes :

    • Si vous utilisez un compte géré, sélectionnez Admin > My Account.

    • Si vous utilisez un compte Snowflake, sélectionnez Admin > Snowflake Admin et connectez-vous à Snowflake en tant qu’utilisateur ayant le rôle ACCOUNTADMIN.

  2. Sélectionnez Admin > Snowflake Admin.

  3. Sélectionnez Log in to Snowflake et authentifiez-vous en tant qu’utilisateur avec le rôle ACCOUNTADMIN.

  4. Pour activer les tables externes ou Iceberg dans le compte, activez la bascule External & Iceberg Tables.

  5. Dans la section Access management for Snowflake objects, sélectionnez Edit, puis sélectionnez la base de données, le schéma ou l’objet pour que ses données puissent être reliées par les utilisateurs de ce compte.

  6. Sélectionnez Save.

Désenregistrement des objets de données

Une fois qu’une table est liée à une clean room, elle ne peut plus en être retirée. Toutefois, vous pouvez désenregistrer l’objet dans le compte, ce qui en supprimera l’accès à toutes les clean room de ce compte.

Si vous souhaitez supprimer des données d’une salle blanche ou d’un compte, ne supprimez pas simplement l’objet sous-jacent ; cela entraînera l’échec de la clean room. Au lieu de cela, utilisez l’une des techniques suivantes pour désenregistrer l’objet.

Lorsque vous désenregistrez un objet d’un compte, vous devez également mettre à jour toutes les clean room que vous avez créées et qui utilisaient ces données.

Les requêtes des collaborateurs qui dépendent des données supprimées échoueront lors de leur prochaine exécution.

Pour désenregistrer un objet dans un compte :

  1. Connectez-vous à l’UI de clean room en tant qu’administrateur de compte, puis effectuez l’une des opérations suivantes :

    • Si vous utilisez un compte géré, sélectionnez Admin > My Account.

    • Si vous utilisez un compte Snowflake, sélectionnez Admin > Snowflake Admin et connectez-vous à Snowflake en tant qu’utilisateur ayant le rôle ACCOUNTADMIN.

  2. Sélectionnez Admin > Snowflake Admin.

  3. Sélectionnez Log in to Snowflake et authentifiez-vous en tant qu’utilisateur avec le rôle ACCOUNTADMIN.

  4. Pour activer les tables externes ou Iceberg dans le compte, activez la bascule External & Iceberg Tables.

  5. Dans la section Access management for Snowflake objects, sélectionnez Edit, puis désélectionnez la base de données, le schéma ou l’objet pour rendre ses données indisponibles pour les utilisateurs de ce compte.

  6. Sélectionnez Save.

  7. Mettez à jour toutes les clean rooms que vous avez créées et qui dépendent de ces données.

Activation des tables externes et Apache Iceberg™

Pour que des tables externes et des tables Iceberg puissent être liées à une clean room, le compte doit d’abord être configuré de manière à permettre l’utilisation de tables externes et de tables Iceberg. Une fois les tables externes et Iceberg activées, elles peuvent être enregistrées, liées et utilisées comme n’importe quelle autre table.

Le processus d’activation des tables externes et Iceberg varie selon que vous gérez la clean room à l’aide de l’UI ou de l’API de clean room.

Exigences relatives à la table externe et à la table Iceberg

  • Le compte du fournisseur et celui du consommateur doivent activer les tables externes et les tables Iceberg pour permettre l’utilisation complète d’une clean room qui établit des liens avec des tables externes ou des tables Iceberg.

  • Les fournisseurs doivent toujours activer les tables externes et les tables Iceberg lorsqu’ils partagent une clean room avec un compte géré. En effet, les comptes gérés utilisent toujours des tables externes.

  • Si le fournisseur et le consommateur se trouvent dans des régions différentes, seul le consommateur peut lier des tables externes ou Iceberg à une clean room.

L’UI de clean room contrôle les tables externes et Iceberg au niveau du compte.

Avertissement

Si le compte du consommateur n’a pas activé cette fonction, les consommateurs ne pourront pas rejoindre de clean room ayant un lien avec des tables externes ou des tables Iceberg, ou ne pourront pas modifier (mais pourront toujours exécuter) des clean room déjà rejointes ayant un lien avec l’un ou l’autre type de table.

L’administrateur de DCR, tant pour le compte du fournisseur que pour celui du consommateur, doit prendre les mesures suivantes :

  1. Connectez-vous à l’UI de clean room en tant qu’administrateur de compte, puis effectuez l’une des opérations suivantes :

    • Si vous utilisez un compte géré, sélectionnez Admin > My Account.

    • Si vous utilisez un compte Snowflake, sélectionnez Admin > Snowflake Admin et connectez-vous à Snowflake en tant qu’utilisateur ayant le rôle ACCOUNTADMIN.

  2. Activer la bascule External & Iceberg Tables. Cela permet d’utiliser la fonction dans les clean room créées par UI et API.

  3. Les tables externes et Iceberg sont désormais sélectionnables dans le panneau Access management for Snowflake objects de l’administrateur, où elles peuvent être sélectionnées pour être mises à la disposition des clean room, au même titre que n’importe quel autre objet.