Überblick über Snowflake Data Clean Rooms¶
Diese Seite bietet eine Übersicht darüber, wie Snowflake Data Clean Rooms funktioniert. Wenn Sie ein Snowflake-Administrator sind und Clean Rooms in Ihrem Konto installieren möchten, lesen Sie Snowflake Data Clean Rooms-Umgebung installieren.
Überblick über Snowflake Data Clean Rooms¶
Data Clean Rooms sind konfigurierbare, isolierte Snowflake-Umgebungen, in denen Teilnehmer Daten importieren, festlegen, welche Abfragen auf diesen Daten ausgeführt werden können, und Datenschutzeinstellungen konfigurieren, wie z. B. differentielle Privatsphäre und die Festlegung von verknüpfbaren und projizierbaren Zeilen. Der Zugang zu einem Clean Room ist nur auf Einladung möglich.
Clean Rooms unterstützen keine Monetarisierungs-Features. Anbietern werden verschiedene Hintergrundprozesse in Rechnung gestellt, die für die Aktivierung von Clean Rooms erforderlich sind. Dem Konto, das eine Abfrage durchführt, werden die Standard-Snowflake-Kosten für die Daten- und Rechennutzung in Rechnung gestellt. Weitere Informationen über Kosten finden Sie unter Kosten verstehen.
Sie müssen von einem Clean Room-Anbieter eingeladen werden, um Zugang zu einem Clean Room zu erhalten. Wenn Sie Ihren Clean Room für eine größere Zielgruppe öffnen möchten, müssen Sie potenziellen Teilnehmern eine Möglichkeit bieten, Sie zu kontaktieren, damit sie ihr Snowflake-Konto angeben und Sie sie einladen können (oder eine E-Mail-Adresse für Benutzer, die keine Snowflake-Benutzer sind).
Hier finden Sie einen Überblick über die Funktionsweise von Snowflake Data Clean Rooms:
Installation in einer Clean Room-Umgebung¶
Die Snowflake Data Clean Room-Umgebung wird einmal für ein gesamtes Snowflake-Konto (nicht ein Mal pro Benutzendem oder pro Clean Room) von jemandem mit ACCOUNTADMIN-Berechtigungen für das Snowflake-Konto installiert.
Der Administrator konfiguriert die Umgebung, um festzulegen, welche Benutzer in dem Konto Clean Rooms erstellen und Abfragen durchführen können, welche Benutzer Zugriff auf die API haben, welche Konten zur Zusammenarbeit in einem Clean Room eingeladen werden können, welche Daten ein Ersteller eines Clean Room in den Clean Room importieren kann und welche Dienste von Drittanbietern (falls vorhanden) verwendet werden können, um Abfrageergebnisse aus einem in diesem Konto erstellten Clean Room zu exportieren.
Wenn für Ihr Konto bereits eine Clean Room-Umgebung installiert wurde, wenden Sie sich an Ihren Clean Room-Administrator, um Zugang zu erhalten. Wenn für Ihr Konto noch keine Clean Room-Umgebung installiert wurde, sollten Sie durchgehen, wie Sie die Umgebung installieren können.
Nach der Installation und Konfiguration der Umgebung erteilt der Administrator anderen Benutzern von Snowflake die Berechtigung, die Clean Room UI, API oder beide zu nutzen.
Mehr erfahren
Erfahren Sie, wie Sie die Clean Room-Umgebung installieren und konfigurieren.
Standardmäßig können Sie Clean Rooms nur mit Konten in derselben Webhosting-Region freigeben. Der Administrator kann die Freigabe für Konten in anderen Regionen aktivieren.
Siehe andere Aufgaben, die Clean Room-Administratoren ausführen.
Bemerkung
Wenn Sie per E-Mail eine Einladung zum Beitritt zu einem Clean Room erhalten haben, haben Sie bereits Clean Rooms in Ihrem Snowflake-Konto installiert. Sie können den Rest dieser Seite lesen, um mehr über die Nutzung von Clean Rooms zu erfahren, aber Sie müssen nichts installieren, nur um dem Clean Room beizutreten.
Wenn Sie Kontoadministrator sind und die Clean Room-Umgebung nicht in Ihrem Snowflake-Konto installiert ist, sehen Sie sich an, wie Sie die Clean Room-Umgebung für Ihr Snowflake-Konto installieren.
Wenn Sie kein Kontoadministrator sind, fragen Sie einen Kontoadministrator, ob Snowflake Data Clean Rooms für Ihr Konto installiert ist. Wenn nicht, bitten Sie ihn, diesen zu installieren und Ihnen Zugang zu gewähren. Wenn ja, bitten Sie um die Berechtigung, die Clean Rooms zu betreten.
Wenn Sie ein Entwickler sind und API-Zugriff wünschen, bitten Sie einen Clean Room-Administrator, Ihnen Zugriff auf die API zu gewähren.
Clean Room erstellen¶
Ein Snowflake-Kontoadministrator erteilt Benutzenden in ihrem Snowflake-Konto die Berechtigung, Clean Rooms zu erstellen. Das Konto, das einen Clean Room erstellt, wird als Anbietender für diesen Clean Room bezeichnet. Anbietende können Clean Rooms konfigurieren und für Benutzende in anderen Snowflake-Konten (oder auch für Nicht-Snowflake-Benutzende) freigeben. Wenn ein Clean Room für Sie freigegeben wird, werden Sie als Verbrauchender für diesen Clean Room bezeichnet.
Nach der Erstellung eines Clean Rooms verknüpft (importiert) der Anbietende (Links) Tabellen oder Ansichten in diesen, gibt an, welche Abfragen für seine Daten ausgeführt werden können, welche Spalten in seinen Daten verknüpft oder in den Ergebnissen angezeigt werden können und was mit den Ergebnissen gemacht werden kann.
Der Anbietende lädt dann die Verbrauchenden ein, dem Clean Room beizutreten, ihre eigenen Tabellen und Ansichten zu verknüpfen und eine der vom Anbietenden angegebenen Abfragen auszuführen. Verbrauchende müssen vorab von einer Person mit administrativen Rechten für Clean Rooms genehmigt werden, bevor sie zu einem Clean Room eingeladen werden können.
Mehr erfahren
Clean Rooms können entweder im Code oder mithilfe der Clean Room UI erstellt werden. Die Berechtigung, einen Clean Room zu erstellen, wird für Web-Benutzer und Codierer unterschiedlich erteilt.
Tabellen können sowohl aus Snowflake-Konten als auch aus Nicht-Snowflake-Iceberg-Tabellen auf AWS, Azure und Google importiert werden.
Bevor Daten in einen Clean Room importiert werden können, müssen sie von einem Benutzer mit Admin-Berechtigungen für die Quelldaten registriert werden.
Sie können sowohl Snowflake- als auch Nicht-Snowflake-Benutzer einladen, einem Clean Room beizutreten.
Erfahren Sie mehr über die Rolle des Anbieters in Clean Rooms.
Während der Entwicklung können Sie dasselbe Konto sowohl für Anbieter- als auch für Verbraucherrollen verwenden, allerdings mit nur einer Teilmenge der Clean Room-Funktionen.
Beitritt zu einem Clean Room¶
Nachdem Sie einen Clean Room erstellt und konfiguriert haben, sendet der Anbieter Einladungen an Benutzer in anderen Konten, um dem Clean Room beizutreten. Diese eingeladenen Benutzer werden Verbraucher oder manchmal Teilnehmer genannt. Verbraucher, die über die Clean Room UI eingeladen werden, erhalten per E-Mail eine Einladung, dem Clean Room beizutreten. Snowflake-Benutzer müssen die Clean Room-Umgebung installiert haben, um zum Beitritt zu einem Clean Room eingeladen zu werden, aber Sie können auch Nicht-Snowflake-Benutzer zum Beitritt zu einem Clean Room einladen. Ein Snowflake-Konto muss von einem Clean Room-Administrator zugelassen werden, bevor ein Ersteller eines Clean Room Benutzer in dieses Konto einladen kann.
(In der Clean Room UI werden sowohl „beitreten“ als auch „installieren“ verwendet, um zu beschreiben, wann ein Verbraucher eine Einladung zu einem Clean Room annimmt. Das liegt daran, dass ein Clean Room buchstäblich in der Clean Room-Umgebung des Verbrauchers installiert werden muss.)
Nach dem Beitritt zu einem Clean Room importiert (verknüpft) ein Verbraucher alle Daten, die für die Vorlagen in diesem Clean Room benötigt werden, gibt an, wie auf seine Daten zugegriffen werden kann, z. B. welche Spalten verknüpft oder projiziert werden können, stellt alle vorlagenspezifischen Filter oder andere Parameter bereit und führt dann die Vorlage aus. Verbraucher können eine wiederholte Ausführung der Vorlage angeben, falls gewünscht. Die Ergebnisse können im Browser angezeigt oder heruntergeladen werden. Wenn der Anbieter die Aktivierung aktiviert hat und der Verbraucher zustimmt, kann der Verbraucher die Ergebnisse an die genehmigten Speicherorte exportieren (sein eigenes Snowflake-Konto oder einen vom Anbieter bestimmten Aktivierungskonnektor eines Drittanbieters).
Daten, die in einen Clean Room importiert werden, können von keiner der beiden Parteien – weder vom Anbieter oder noch Verbraucher – direkt abgefragt oder angezeigt werden. Sie können nur über eine Vorlage im Clean Room aufgerufen werden. Eine Vorlage ist eine SQL-Abfrage, die vom Anbieter oder Verbraucher im Clean Room installiert wurde, und es muss von der anderen Partei die Erlaubnis erteilt werden, sie im Clean Room zu verwenden.
Jede Partei legt außerdem Zugriffsregeln für ihre eigenen Daten fest, z. B. welche Spalten verknüpft, projiziert oder exportiert werden können und welche Vorlagen im Clean Room ausgeführt werden können. Jede Partei kann ihre Daten jederzeit aus dem Clean Room löschen.
Standardmäßig kann nur ein Verbraucher Vorlagen in einem Clean Room ausführen, aber der Anbieter kann den Verbraucher um die Berechtigung bitten, eine bestimmte Vorlage im Clean Room auszuführen.
Mehr erfahren
Clean Rooms unterstützen differentielle Privatsphäre. Die differentielle Privatsphäre kann entweder vom Anbieter oder vom Verbraucher aktiviert und konfiguriert werden.
Erfahren Sie mehr über die Rolle des Verbrauchers in Snowflake Data Clean Rooms.
Vorlagen¶
In jedem Clean Room sind eine oder mehrere Vorlagen installiert. Eine Vorlage ist eine JinjaSQL-Abfrage, die normalerweise Laufzeitparameter enthält, die vom Vorlagen-Runner bereitgestellt werden. Mit diesen Parametern können Benutzende Filter für Spalten- oder Tabellennamen oder WHERE-Klauseln angeben. Sie können nicht einfach beliebige SQL-Abfragen in einem Clean Room ausführen (es sei denn, ein Anbietender gewährt diese Fähigkeit). Die meisten Clean Room-Nutzungen sind auf Vorlagen beschränkt, die vom Anbietenden oder Verbrauchenden eingereicht und von der anderen Partei genehmigt wurden.
Snowflake bietet einige Bestandsvorlagen für gängige Anwendungsfälle, z. B. für Vorlagen mit Zielgruppenüberschneidung sowie Vorlagen für Reichweite und Häufigkeit. Sie können auch kundenspezifische Vorlagen erstellen, die Sie in Ihrem Clean Room verwenden. Snowflake Data Clean Rooms unterstützt alle gültigen JinjaSQL-Vorlagen.
Die Vorlagen können in der Clean Room UI oder im Code ausgeführt werden. Die Ergebnisse der Vorlagen können eingesehen oder heruntergeladen werden, oder sie können an den Anbieter, den Verbraucher oder einen zugelassenen Dritten weitergegeben werden, wenn Aktivierung in diesem Clean Room erlaubt ist.
Mehr erfahren
Standardmäßig können nur Verbraucher eine Vorlage in einem Clean Room ausführen. Ein Anbieter kann jedoch um die Erlaubnis des Verbrauchers bitten, eine Vorlage in einem Clean Room auszuführen.
Die Vorlage und die Clean Room-Konfiguration legen fest, was mit den Abfrageergebnissen gemacht werden kann. Wenn die Abfrageergebnisse außerhalb des Clean Room exportiert werden, wird dies als Aktivierung bezeichnet. Die Ergebnisse können auf einem Snowflake-Konto des Anbieters oder Verbrauchers oder für einen von Snowflake zugelassenen Dritten aktiviert werden.
Clean Room-Variationen¶
Der gängigste Clean Room ist, wie oben beschrieben, einer, bei dem ein Anbieter Daten importiert und eine oder mehrere spezifische Abfragen angibt, die auf den Daten ausgeführt werden können, und angibt, wie die Ergebnisse gemeinsam genutzt werden können. Der Verbraucher importiert seine eigenen Daten und führt die zulässigen Abfragen auf den kombinierten Daten aus. Ein Anbieter kann jedoch mehrere Variationen des Standard-Clean Room zulassen:
Erlauben Sie dem Anbieter, seine eigenen Abfragen auf Verbraucherdaten durchzuführen.. Standardmäßig kann nur der Verbraucher Abfragen in einem Clean Room durchführen. Wenn diese Funktion für einen Clean Room aktiviert ist, kann ein Anbieter vom Verbraucher die Berechtigung anfordern, eine bestimmte Abfrage im Clean Room durchzuführen.
Erlauben Sie den Export der Abfrageergebnisse (aktiviert) auf das Snowflake-Konto der Person, die die Abfrage durchführt, oder auf ein von Snowflake genehmigtes Konto eines Drittanbieters, wie Meta Ads Manager oder The Trade Desk. Der Export von Daten außerhalb des Clean Room unterliegt immer der Zustimmung aller Parteien, die die abgefragten Daten freigegeben haben.
Erlauben Sie beiden Parteien benutzerdefinierten Python-Code einzuschließen, der von der ausgeführten Abfrage aufgerufen werden kann. Dieser Code filtert oder manipuliert normalerweise die Daten auf irgendeine Weise, während die Abfrage ausgeführt wird. Er kann keine externen Aktionen wie das Speichern einer Datei oder das Exportieren von Daten ausführen.
Erlauben Sie der Abfrage den Zugriff auf Daten in anderen Clean Rooms, vorbehaltlich der Zustimmung der Anbieter aller Clean Rooms, auf die zugegriffen wird.
Allgemeine Informationen zu Anbietern und Verbrauchern¶
Clean Room-Teilnehmende werden entweder als Anbietende oder als Verbrauchende für einen bestimmten Clean Room klassifiziert. Ein Anbietender ist das Konto, das einen Clean Room erstellt. Ein Verbrauchender ist ein Konto, für den ein Clean Room freigegeben wird. Sie können nicht jemanden in dem Konto, in dem Sie einen Clean Room erstellt haben, einladen, als Verbrauchender für diesen Clean Room zu agieren. Alle Benutzende in demselben Snowflake-Konto haben dieselbe Clean Room-Rolle (Anbietender oder Verbrauchender) für dieselben Clean Rooms in diesem Konto.
Die Anbieter- und Verbraucherrollen gelten auf der Ebene des Snowflake-Kontos, nicht auf der Ebene des einzelnen Benutzenden. Wenn Sie also den Clean Room cleanroom1 mithilfe des Snowflake-Kontos ABC erstellen und dann cleanroom1 für Konto XYZ freigeben, sind alle Benutzende von ABC mit Zugriff auf cleanroom1 Anbietende und alle Benutzende von XYZ mit Zugriff auf cleanroom1 sind Verbrauchende.
Ob Sie Anbieter oder Verbraucher sind, hängt allein davon ab, ob Sie einen Clean Room erstellt haben oder einer für Sie freigegeben wurde, und nicht von Snowflake-Rollen oder anderen Berechtigungen.
Hier finden Sie weitere Informationen über die Anbieter- und Verbraucherrollen.
Tipp
Manchmal wird das Wort Teilnehmer verwendet, um einen Verbraucher oder Personen, die Zugang zu einem bestimmten Clean Room haben, zu bezeichnen.
Anbieter¶
Ein Anbieter ist definiert als das Konto, das einen Clean Room erstellt hat. Jeder, der über dieses Konto auf den Clean Room zugreift, gilt als Anbieter für diesen Clean Room.
Die Anbieter führen die folgenden Clean Room-Aktionen durch:
Clean Rooms erstellen, freigeben und löschen
Festlegen, wer einen Clean Room als Verbraucher nutzen darf (lädt Verbraucher ein)
Daten in einen Clean Room importieren
Definieren, welche Vorlagen in einem Clean Room ausgeführt werden können
Festlegen, ob Verbraucher eine benutzerdefinierte Vorlage in einem Clean Room ausführen können
Verbraucher einladen, den Clean Room zu teilen
Festlegen, welche Vorlagen in einem Clean Room verwendet werden, und benutzerdefinierte Vorlagen für den Clean Room erstellen
Abfragen von Verbraucherdaten durchführen, wenn der Verbraucher zustimmt
Verkettete Vorlagen zulassen
Python-Skript in einen Clean Room zur Verwendung in einer Vorlage laden
Zulassen, dass Anbieterdaten aus diesem Clean Room in einer Verbraucherabfrage mit Daten aus anderen angegebenen Clean Rooms abgefragt werden können
Differentielle Privatsphäre für den Clean Room oder den Verbraucher aktivieren oder deaktivieren
Versionierung des Clean Room verwalten
Spalten- und Verknüpfungsrichtlinien für ihre eigenen Daten festlegen
Verbraucher¶
Ein Verbraucher ist definiert als ein Konto, das von einem Anbieter eingeladen wurde, einem Clean Room beizutreten (ihn zu installieren).
Die Verbraucher führen die folgenden Aktionen im Clean Room durch (je nach Konfiguration des Clean Room):
Einem Clean Room für ihr Konto beitreten (ihn installieren)
Daten in den Clean Room importieren
Abfragen ausführen, die der Clean Room unterstützt
Abfrageergebnisse exportieren, wie vom Clean Room aktiviert
Um die Berechtigung bitten, ihre eigene Vorlage in einem Clean Room zu verwenden
Angeben, ob Anbieter eine Vorlage im Clean Room ausführen können (standardmäßig können nur Verbraucher eine Vorlage ausführen)
Dem Anbieter des Clean Room erlauben, Abfragen auf den Daten des Verbrauchers durchzuführen
Eine Abfrage durchführen, die ihre Daten und Anbieterdaten aus mehreren Clean Rooms umfasst, wenn die Anbieter in allen betroffenen Clean Rooms einverstanden sind
Python-Skript in den Clean Room laden (mit Erlaubnis des Anbieters)
Spalten- und Verknüpfungsrichtlinien für ihre eigenen Daten festlegen
Einstellungen für differentielle Privatsphäre für vom Anbieter durchgeführte Abfragen festlegen
Möglichkeiten für den Zugriff auf Snowflake Data Clean Rooms¶
Snowflake Data Clean Rooms bieten sowohl eine browserbasierte No-Code-Anwendung (die Clean Rooms-UI) als auch eine API zum Erstellen und Verwalten von Clean Rooms. Derzeit sind die Clean Rooms-UI und API hinsichtlich ihrer Funktionen nicht exakt gleichwertig Im Folgenden finden Sie eine Zusammenfassung der Unterschiede:
Nur-UI-Features |
Nur-API-Features |
|---|---|
|
|
Beachten Sie, dass Sie einen Clean Room mithilfe der Clean Rooms-UI erstellen und diesen in der API verwenden oder verwalten können, und umgekehrt.
Clean Room UI¶
Snowflake Data Clean Rooms kann in einem Browser verwaltet und ausgeführt werden. Sie können die Clean Room UI verwenden, um Clean Rooms als Anbieter oder Verbraucher zu erstellen, zu verwalten und zu nutzen, oder um verschiedene Features auf Kontoebene zu konfigurieren, wie z. B. verwaltete Konten, Drittanbieter-Konnektoren und Features für UI-Benutzer.
Der Zugriff auf die Clean Rooms-UI erfolgt über eine separate URL von Snowsight. Sie finden die Anmelde-URL hier.
Berechtigungen und Zugriff: Ihnen muss von einer Person mit administrativen Rechten für Clean Rooms Zugriff für die Verwendung der Clean Rooms-UI gewährt werden. Die Clean Rooms-UI nutzt dabei Ihre Snowflake-Anmeldeinformationen.
Folgen Sie dem Tutorial für die Clean Rooms-UI oder lesen Sie mehr über die Clean Rooms-UI.
API¶
Snowflake bietet eine Reihe von gespeicherten Prozeduren zum Erstellen, Verwalten und Ausführen von Clean Rooms. Diese Prozeduren können über Snowsight-Notebooks oder -Arbeitsblätter oder eine andere Schnittstelle aufgerufen werden, über die Sie gespeicherte Prozeduren in Ihrem Snowflake-Konto ausführen können. Die API ermöglicht nicht die Verwaltung von Clean Room-Konten; um ein solches Konto zu verwalten, müssen Sie die Clean Rooms-UI verwenden.
Berechtigungen und Zugriff: Um die API verwenden zu können, muss Ihnen von der Person mit administrativen Rechten für Clean Rooms für Ihr Snowflake-Konto der Zugriff auf die SAMOOHA_APP_ROLE <label-cleanrooms_add_developers> gewährt werden.
Lesen Sie mehr über die Clean Room API oder probieren Sie das API-Tutorial aus.
Ist die Clean Room-Umgebung in Ihrem Snowflake-Konto installiert?¶
So erkennen Sie, ob die Clean Room UI oder API in Ihrem Konto installiert ist:
So sehen Sie, ob Snowflake Data Clean Rooms installiert ist:
Melden Sie sich bei Snowsight an.
Wählen Sie im Navigationsmenü die Option Catalog » Apps » Installed Apps aus.
Prüfen Sie, ob Snowflake Data Clean Rooms in Ihrer Liste Installed Apps angezeigt wird.
Führen Sie
SHOW ROLES LIKE 'SAMOOHA_APP_ROLE';aus, um zu sehen, ob die API in Ihrem Konto installiert ist. Wenn die Rolle angezeigt wird, ist die Clean Room-Umgebung wahrscheinlich installiert.Führen Sie
SELECT IS_ROLE_IN_SESSION('SAMOOHA_APP_ROLE');aus, um zu sehen, ob Sie Zugriff auf die API haben.Führen Sie
SHOW GRANTS ON ROLE SAMOOHA_APP_ROLE;aus, um zu sehen, welche Rollen SAMOOHA_APP_ROLE gewähren können, was für die Verwendung der API erforderlich ist.