À propos de Snowflake Collaboration Data Clean Rooms

Vue d’ensemble

Snowflake Data Clean Rooms présente en avant-première une nouvelle architecture de salle blanche de données appelée Collaboration Data Clean Rooms. Collaboration Data Clean Rooms permet aux clients de collaborer dans un environnement multipartite et entièrement symétrique. Contrairement aux modèles traditionnels fournisseur-consommateur qui limitent les rôles et le nombre de collaborateurs, l’API de collaboration prend en charge les rôles flexibles et les contrôles d’accès aux données précis pour un nombre illimité de participants.

Salles blanches de données des fournisseurs et des consommateurs vs. Collaboration Data Clean Rooms

Les salles blanches de fournisseurs et de consommateurs, la première architecture de salles blanches de données, ont été conçues principalement pour des collaborations entre deux parties. Les Collaboration Data Clean Rooms prennent en charge la collaboration multipartite sans complexité supplémentaire. La nouvelle conception remplacera les concepts de fournisseur et de consommateur, d’analyses effectuées par les fournisseurs par rapport aux analyses effectuées par les consommateurs, et de collaboration simple par rapport à la collaboration multipartite avec une salle blanche configurable qui permet à toute partie de fournir des données et des modèles, et d’effectuer des analyses.

Vue d’ensemble de haut niveau de la collaboration avec deux participants

 

Les salles blanches de fournisseurs et de consommateurs et les Collaboration Data Clean Rooms coexisteront pendant un certain temps. Vos salles blanches de fournisseurs et de consommateurs sont encore utilisables et ne seront pas modifiées ou supprimées. Cependant, nous vous encourageons à essayer les nouvelles Collaboration Data Clean Rooms. Notre objectif est de migrer tous les utilisateurs vers les Collaboration Data Clean Rooms, qui devraient offrir une expérience de collaboration beaucoup plus simple et plus robuste.

Introduction aux Collaboration Data Clean Rooms

Dans la nouvelle architecture des salles blanches de données, une salle blanche est appelée une collaboration, et tous les utilisateurs ayant accès à la collaboration sont appelés collaborateurs. Chaque collaborateur a un ou plusieurs rôles dans la collaboration. Dans ce cas, le terme rôle ne fait pas référence à un rôle RBAC [*], mais à un ensemble d’autorisations qui définissent ce que l’utilisateur peut faire. Les rôles suivants existent dans une collaboration :

  • Propriétaire : crée la collaboration et détermine qui a quels rôles dans une collaboration.

  • Fournisseur de données : peut importer des données à utiliser par un gestionnaire d’analyses désigné.

  • Gestionnaire d’analyses : peut exécuter des requêtes dans la collaboration en utilisant des offres de données fournies par des fournisseurs de données désignés.

Chaque collaborateur peut avoir plusieurs rôles et une collaboration peut avoir plusieurs fournisseurs de données et gestionnaires d’analyses, mais un seul propriétaire.

Les collaborations peuvent contenir de nombreux types de ressources :

  • Modèle : un modèle JinjaSQL qui correspond à une requête SQL. Les modèles peuvent être ajoutés à une collaboration par n’importe quel collaborateur, mais les modèles ne peuvent être exécutés que par les gestionnaires d’analyse que le fournisseur de modèles désigne.

  • Offre de données : ensemble d’une ou plusieurs vues partagées par un fournisseur de données avec des gestionnaires d’analyses spécifiques dans le cadre de cette collaboration.

Toutes les ressources, ainsi que la définition de la collaboration elle-même, sont spécifiées à l’aide de fichiers de spécifications YAML qui sont enregistrés par les collaborateurs. Les collaborateurs peuvent ajouter ou supprimer des ressources après la création de la collaboration, mais les rôles ne peuvent pas être modifiés, ni de nouveaux membres invités, après la création de la collaboration.

Exigences et limitations actuelles

Architecture système

Cette section fournit une description détaillée du fonctionnement de la collaboration dans les Snowflake Data Clean Rooms.

Le schéma suivant est une représentation simplifiée d’une collaboration à deux parties :

Vue d’ensemble de haut niveau de la collaboration avec deux participants

Remarques sur le schéma :

Ce schéma montre deux collaborateurs qui utilisent l’API Data Clean Rooms Collaboration pour créer et gérer une collaboration.

Le collaborateur A est le propriétaire et le créateur, comme indiqué par la définition de la collaboration YAML dans le schéma. Le collaborateur A est également un fournisseur de données, indiqué par le partage de l’offre de données.

Le collaborateur B est un fournisseur de données, comme indiqué par le partage de l’offre de données sur le schéma.

A et B peuvent tous deux fonctionner comme des gestionnaires d’analyses, si la définition de la collaboration le permet.

L’orchestration de collaboration sécurisée (SCO) est un compte qui gère les collaborations. La SCO crée un paquet d’application individuel pour chaque collaboration. Ce paquet d’application est une application que tous les collaborateurs potentiels peuvent installer (rejoindre). Tous les collaborateurs interagissent avec l’application de collaboration à l’aide de l’API DCR Collaboration. Les coûts associés à la SCO ne sont pas facturés aux utilisateurs.

Les collaborateurs créent des offres de données et la SCO partage ces données avec les collaborateurs selon la définition de la collaboration. La SCO utilise les spécifications de collaboration, d’offre de données, de modèle et d’analyse pour appliquer des politiques de collaboration, par exemple qui peut accéder à quelles données en utilisant quels modèles, quelles données peuvent être activées, et vers qui, et si l’accès au SQL de forme libre est fourni.