Gestion de la réplication automatique dans le Cloud Snowflake Data Clean Rooms¶
À propos de l’exécution automatique inter-Cloud¶
Dans l’environnement de clean room par défaut, une clean room ne peut être partagée qu’avec des comptes de la même région Cloud. En d’autres termes, le fournisseur et le consommateur doivent se trouver dans la même région Cloud.
Si vous souhaitez collaborer avec un collaborateur dont le compte se trouve dans une région différente de la vôtre, vous devez activer l’exécution automatique inter-Cloud pour votre environnement de clean room et votre clean room, comme indiqué sur cette page.
Vous pouvez déterminer votre propre région Cloud en lançant SELECT CURRENT_REGION();
Note
L’exécution automatique inter-Cloud est parfois appelée LAF, qui signifie exécution automatique des annonces.
Permettre l’exécution automatique inter-Cloud¶
Vous pouvez activer l’exécution automatique inter-Cloud en utilisant l’API ou l’UI. Notez toutefois les:ref:limites de la collaboration interrégionale <label-dcr_LAF_limitations>
.
Conditions préalables¶
Pour activer l’exécution automatique inter-Cloud pour un compte, un administrateur de l’organisation doit d’abord l’activer sur le compte en appelant SYSTEM$ENABLE_GLOBAL_DATA_SHARING_FOR_ACCOUNT. Cela concerne tant les fournisseurs que les consommateurs.
Plus d’infos sur exécution automatique et gestion des privilèges de l’exécution automatique.
Activer l’exécution automatique inter-Cloud dans l’UI¶
En tant qu’administrateur de salles blanches, pour activer l’exécution automatique inter-Cloud au niveau du compte pour toutes les salles blanches nouvelles et existantes, procédez comme suit :
Connectez-vous à l’UI des salles blanches avec votre compte administrateur.
Accédez à Admin > Snowflake Admin.
Basculez sur Cross-Cloud Auto-Fulfillment.
Aucune étape supplémentaire n’est requise par le fournisseur ou le consommateur lors de la création ou la jointure d’une salle blanche dans l’UI. Toutefois, si vous créez ou joignez une salle blanche dans l’API, vous devez suivre les instructions de l’API pour les fournisseurs et les consommateurs.
Activer l’exécution automatique inter-Cloud dans l’API¶
Suivez ces instructions pour créer ou installer une salle blanche dans l’API, même si vous avez déjà activé l’exécution automatique inter-Cloud dans l’UI.
Administrateurs de compte¶
Pour activer l’exécution automatique inter-Cloud pour un compte en utilisant l’API, les administrateurs des comptes de fournisseur et de consommateur doivent exécuter l’exemple de code suivant à l’aide du rôle ACCOUNTADMIN. Vous devez exécuter cette opération une seule fois par compte.
USE ROLE ACCOUNTADMIN;
-- Optionally check first to see if cross-cloud is enabled on the account.
CALL samooha_by_snowflake_local_db.library.is_laf_enabled_on_account();
-- If not, enable it.
CALL samooha_by_snowflake_local_db.library.enable_laf_on_account();
Fournisseurs et consommateurs¶
Après l’activation de l’exécution automatique inter-Cloud pour un compte, voici comment l’activer lors de la création ou de l’installation d’une salle blanche :
Le fournisseur publie la salle blanche de manière normale en appelant
provider.create_or_update_cleanroom_listing
.Le consommateur installe la salle blanche en appelant
consumer.install_cleanroom
. Si le consommateur se trouve dans une région cloud différente de celle du fournisseur,consumer.install_cleanroom
échoue avec un message indiquant que la réplication de l’exécution automatique inter-Cloud est en cours d’installation.Le consommateur continue d’appeler
consumer.install_cleanroom
jusqu’à ce qu’il confirme la réussite de l’installation. L’installation prend plusieurs minutes.
À ce stade, le consommateur dispose des fonctionnalités de base de la salle blanche. Si le consommateur souhaite pouvoir effectuer des requêtes de modèle client, être autorisé par le fournisseur à effectuer des analyses et activer les actions entre lui-même et le fournisseur,voici la marche à suivre :
Le fournisseur appelle
provider.mount_request_logs_for_all_consumers
pour permettre la communication du consommateur au fournisseur.
Exemple de code de configuration complet :
Le fournisseur : le fournisseur crée, partage et publie une clean room de manière standard.
USE WAREHOUSE APP_WH; USE ROLE SAMOOHA_APP_ROLE; SET cleanroom_name = 'LAF example'; SET consumer_locator = '<CONSUMER_LOCATOR>'; SET consumer_account_name = '<CONSUMER_DATA_SHARING_ACCOUNT_ID>'; CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.provider.cleanroom_init($cleanroom_name); CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.provider.set_default_release_directive( $cleanroom_name, 'V1_0', '0'); CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.provider.add_consumers( $cleanroom_name, $consumer_locator, $consumer_account_name); CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.provider.create_or_update_cleanroom_listing($cleanroom_name);
Consommateur : le consommateur installe la salle blanche.
USE WAREHOUSE APP_WH; USE ROLE samooha_app_role; SET cleanroom_name = 'LAF example'; SET provider_locator = '<PROVIDER_LOCATOR>'; -- Initial call starts the process and returns a cross-cloud/region replication failure. -- Continue to call this procedure until it returns a success message. CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.consumer.install_cleanroom( $cleanroom_name, $provider_locator); -- Continue with standard clean room configuration and use. -- Consumer can run analyses, but requests to submit a template aren't -- supported until the provider calls ``provider.mount_request_logs_for_all_consumers``. ...
Fournisseur : une fois que le consommateur a installé la salle blanche, le fournisseur doit monter le partage de requêtes s’il souhaite activer les actions basées sur les requêtes entre le fournisseur et le consommateur. Les actions basées sur les requêtes comprennent les requêtes du fournisseur pour exécuter une analyse et les requêtes du consommateur afin d’ajouter un modèle à la salle blanche.
-- Call mount_request_logs_for_all_consumers until it reports success. provider.mount_request_logs_for_all_consumers($cleanroom_name);
La fonctionnalité complète fournisseur/consommateur est désormais disponible.
Fréquence d’actualisation des comptes interrégionaux¶
Les demandes et les données entre le fournisseur et le consommateur lorsqu’elles se trouvent sur différentes régions Cloud sont soumises à des paramètres de fréquence de réplication.
Requêtes et données du fournisseur au consommateur
Toutes les données et requêtes du fournisseur au consommateur sont actualisées au taux d’actualisation du compte (toutes les 24 heures par défaut). Cela inclut la création ou la mise à jour d’une salle blanche, la modification des données du fournisseur, les demandes d’autorisation (pour effectuer des analyses gérées par le fournisseur) et les approbations des requêtes (telles que les modèles du consommateur).
La fréquence des demandes du fournisseur au consommateur est déterminée par la:ref:planification de l’actualisation de la réplication du compte <label-listing_auto_fulfillment_replication_refresh_schedule>
.
Requêtes et données du consommateur au fournisseur
Le tableau suivant indique la fréquence d’actualisation des données et des requêtes du consommateur au fournisseur :
Données |
Fréquence d’actualisation |
---|---|
Requêtes, approbations et modifications telles que les suivantes :
|
|
Données d’activation du fournisseur : |
|
Données de la salle blanche du fournisseur, notamment :
|
|
Vous pouvez modifier la fréquence d’actualisation pour les requêtes et les données entre le consommateur et le fournisseur.
Coûts liés à la collaboration interrégionale¶
Des coûts supplémentaires sont associés aux collaborateurs qui se trouvent dans une autre région. Pour plus d’informations sur la manière dont ces coûts sont supportés, voir Coûts d’exécution automatique.
Limites de la collaboration interrégionale¶
La collaboration interrégionale se heurte aux limites suivantes :
Lors de l’utilisation de l’UI des salles blanches, les collaborateurs doivent partager la même région d’hébergement de l’UI. Par exemple, si la région hôte de l’UI pour un compte est « Amazon Web Services : US Est (Virginie du Nord) », et la région hôte de l’UI d’un autre compte est « Amazon Web Services : Asie-Pacifique (Mumbai), », alors ces comptes ne peuvent pas collaborer dans l’UI. Cependant, ils peuvent collaborer à l’aide de l’API, si les comptes et la salle blanche sont configurés pour l’exécution automatique inter-Cloud comme décrit sur cette page.
Un fournisseur ne peut pas recourir à la confidentialité différentielle dans la salle blanche.
Les collaborateurs ne peuvent pas lier des tables externes et des tables iceberg dans les salles blanches.
Un consommateur ne peut pas effectuer une analyse multi-fournisseurs.
Les collaborateurs ne peuvent pas utiliser de politiques de masquage ou de politiques d’accès aux lignes.