Grundlegende Datenanalyse durch Verbraucher¶
Unter diesem Thema wird ein grundlegender Anwendungsfall einer Verbraucheranalyse veranschaulicht, bei der die API verwendet wird. Der Anwendungsfall zeigt, wie ein Anbieter einen Clean Room mit Daten programmgesteuert erstellen und freigeben kann, und ein Verbraucher eine Analyse der Daten des Anbieters ausführen kann. Der Anbieter definiert die SQL-Abfragen, die mit ihren Daten ausgeführt werden können. Ein Anbieter kann Abfragen definieren, die nur die Daten des Anbieters oder nur die Daten des Verbrauchers abfragen. Alternativ können auch die Daten von Anbieter und Verbraucher zusammengeführt werden.
Sie können ein vollständiges Codebeispiel herunterladen, das die grundlegende Erstellung, Freigabe und Ausführung von Clean Rooms zwischen einem Anbieter und einem Verbraucher demonstriert.
Schritte für Anbieter¶
Die folgende Liste zeigt die Hauptschritte zum Erstellen, Veröffentlichen und Freigeben eines Clean Rooms für einen Verbraucher. Weitere Details zu jedem Schritt finden Sie in der Liste.
Richten Sie die Umgebung so ein, dass Sie die richtige Rolle und das richtige Warehouse verwenden.
Erstellen Sie einen neuen Clean Room.
Verknüpfen Sie Daten im Clean Room.
Legen Sie eine Verknüpfungsrichtlinie fest, die festlegt, welche Spalten der Anwenderdaten verknüpft werden können.
Importieren Sie Vorlagen in den Clean Room.
Legen Sie eine Spaltenrichtlinie fest, die festlegt, welche Spalten der Anbieterdaten in welche Vorlagen projiziert werden können.
Fügen Sie Konten hinzu, die in diesem Clean Room als Verbraucher fungieren können.
Legen Sie die Standardversion fest, die geladen wird, wenn ein Verbraucher den Clean Room installiert.
Veröffentlichen Sie den Clean Room. Danach können alle eingeladenen Verbraucher den Clean Room installieren und betreiben.
Umgebung einrichten¶
Zur Verwendung der API müssen Sie ein Warehouse verwenden, in dem SAMOOHA_APP_ROLE Berechtigungen hat. app_wh
ist eines von :ref:` mehreren Warehouses <label-cleanrooms_installation_details_warehouses>` mit Zugriff auf die API. Wählen Sie das Warehouse aus, das für Ihre Bedürfnisse geeignet ist. (Sie können auch Ihr eigenes Warehouse verwenden, wenn Sie möchten.)
Die Rolle samooha_app_role
wird benötigt, um Zugriff auf die API zu erhalten.
USE WAREHOUSE app_wh;
USE ROLE samooha_app_role;
Reinraum erstellen¶
Der nächste Schritt besteht darin, einen neuen Clean Room zu erstellen. Dies geschieht mit einem einzigen API-Aufruf, der angibt, ob der Clean Room für die interne oder externe Verwendung bestimmt ist. Interne Clean Rooms können nur von Verbrauchern innerhalb derselben Organisation genutzt werden. Externe Clean Rooms können von Verbrauchern außerhalb der Organisation genutzt werden. Bei beiden Typen müssen die Verbraucher eingeladen werden, den Clean Room zu nutzen, um Zugang zu ihm zu erhalten.
Externe Clean Rooms lösen zusätzliche Sicherheitsprüfungen aus, wenn bestimmte Aktionen durchgeführt werden. Wenn dies geschieht, müssen Sie provider.view_cleanroom_scan_status
aufrufen, um zu sehen, wann der Sicherheitsscan abgeschlossen ist. Dann können Sie mit der nächsten Aktion fortfahren.
Im folgenden Beispiel wird ein interner Clean Room erstellt:
CALL samooha_by_snowflake_local_db.provider.cleanroom_init($cleanroom_name, 'INTERNAL');
Daten mit dem Clean Room verknüpfen¶
Sowohl Anbieter als auch Verbraucher können Tabellen, Ansichten und weitere unterstützte Datenobjekte in einem Clean Room verknüpfen (importieren). Wenn Sie Daten verknüpfen, erstellt die API eine Ansicht im Clean Room, die auf dem angegebenen Quellobjekt basiert. Sie sollten jedoch bei allen Prozessen in Clean Rooms ein verknüpftes Objekt über seinen Quellennamen angeben und nicht über seinen internen Ansichtsnamen.
Auf Daten, die mit dem Clean Room verknüpft sind, können Clean Room-Teilnehmer nicht direkt zugreifen, sondern nur über eine Vorlage innerhalb des Clean Rooms.
Bevor ein Objekt mit einem Clean Room verknüpft werden kann, muss das Objekt registriert werden. Durch die Registrierung eines Objekts werden die entsprechenden Zugriffsrechte für die SAMOOHA_APP_ROLE im Objekt gewährt. Sie können entweder ein Objekt direkt registrieren oder ein enthaltendes Objekt (z. B. eine Datenbank oder ein Schema), um auf untergeordnete Objekte zuzugreifen. Sie können ein Objekt entweder in der UI oder der API registrieren. Die Registrierung erfolgt auf Kontoebene, nicht auf der Ebene des Clean Rooms. Die Registrierung ist in der UI leichter zu bewerkstelligen und zu verwalten. Nachdem Sie ein Objekt registriert haben, steht das Objekt für die Verknüpfung mit jedem Clean Room des Kontos zur Verfügung. Erfahren Sie mehr über die Registrierung.
Das folgenden Beispiel verknüpft die CUSTOMERS-Tabelle aus der Beispieldatenbank SAMOOHA_SAMPLE_DATABASE. Diese Datenbank wird automatisch registriert, wenn Sie die Clean Room-Umgebung in einem Konto installieren, sodass Sie sie nicht registrieren müssen. Sie können Objekte jederzeit in einem Clean Room verknüpfen oder entkoppeln. Die Ergebnisse werden schnell an alle Teilnehmer weitergegeben.
CALL samooha_by_snowflake_local_db.provider.link_datasets(
$cleanroom_name,
['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS']);
Verknüpfungsrichtlinie festlegen¶
Wenn Sie dem Clean Room eine Vorlage hinzufügen, die es dem Verbraucher ermöglicht, Ihre Daten zu verknüpfen, sollten Sie eine Clean Room-Verknüpfungsrichtlinie für Ihre Daten festlegen. Eine Clean Room-Verknüpfungsrichtlinie gibt an, welche Spalten in Abfragen von Teilnehmern verknüpft werden können. Wenn Sie keine Verknüpfungsrichtlinien für Ihre Daten festlegen, sind standardmäßig alle Spalten verknüpfbar. Spalten, die durch eine Verknüpfungsrichtlinie geschützt sind, können nicht projiziert werden. Ihre eigenen Verknüpfungsrichtlinien schränken Ihre eigenen Abfragen nicht ein.
Clean Rooms unterstützen einige Datenrichtlinien, die Sie für verknüpfte Daten festlegen können. Diese Richtlinien ähneln, sind aber nicht identisch mit den entsprechenden Snowflake-Richtlinien und werden nur auf die interne Ansicht angewendet, nicht auf die Quelldaten. Alle Snowflake-Richtlinien, die für die Quelldaten festgelegt wurden, werden an die Ansichten weitergegeben, die erstellt werden, wenn Sie Daten verknüpfen. Clean Room-Richtlinien werden nur für die verknüpften Daten festgelegt, nicht für die Quelldaten.
Wichtig
Die Vorlage ist verantwortlich für das Einschließen von JinjaSQL-Filtern, um Richtlinien durchzusetzen. Wenn die Vorlage diese Richtlinienprüfungsfilter nicht enthält, werden die Richtlinien nicht beachtet. Führen Sie immer Richtlinienprüfungen für Ihre Vorlagen durch, und untersuchen Sie alle Vorlagen, die Sie ausführen, um zu bestätigen, dass sie Clean Room-Richtlinien durchsetzen.
Sie können Richtlinien nur für die Daten festlegen, die Sie verknüpfen. Sie können keine Richtlinien für die Daten einer anderen Partei festlegen.
Das folgende Beispiel zeigt, wie Sie eine Verknüpfungsrichtlinie festlegen, die es ermöglicht, zwei Spalten aus der verknüpften Tabelle miteinander zu verknüpfen.
CALL samooha_by_snowflake_local_db.provider.set_join_policy(
$cleanroom_name,
['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS:HASHED_EMAIL',
'SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS:HASHED_PHONE']);
Vorlagen zum Clean Room hinzufügen¶
Eine Clean Room-Vorlage ist eine gültige JinjaSQL-Vorlage, die fast immer eineSQL-Abfrage bewertet. Einer Vorlage, manchmal auch als Analyse bezeichnet, können vom Aufrufer Argumente übergeben werden, und sie kann auf alle mit dem Clean Room verknüpften Daten zugreifen. Sowohl Anbieter als auch Verbraucher können Vorlagen in einen Clean Room einbinden und sie ausführen.
Snowflake bietet einige Standardvorlagen, aber die meisten davon können nur in der UI verwendet werden. Daher werden Sie wahrscheinlich Ihre eigenen benutzerdefinierten Vorlagen für die Verbraucher (oder sich selbst) schreiben, die Sie in der ausführen API-, ,.
Standardmäßig können Vorlagen nur von Verbrauchern ausgeführt werden. Wenn ein Anbieter eine Vorlage ausführen möchte, müssen sie den Verbraucher um eine Berechtigung bitten. Außerdem gilt: Wenn ein Verbraucher eine Vorlage hochladen möchte, muss er den Anbieter um Erlaubnis bitten.
Weitere Informationen zum Erstellen einer kundenspezifischen Vorlage finden Sie unter Kundenspezifische Vorlagen zu einem Clean Room hinzufügen und Referenz für benutzerdefinierte Clean Room-Vorlagen.
Das folgende Beispiel zeigt, wie Sie eine von Snowflake bereitgestellte Vorlage zum Clean Room hinzufügen:
CALL samooha_by_snowflake_local_db.provider.add_templates(
$cleanroom_name,
['prod_overlap_analysis']);
Spaltenrichtlinien festlegen¶
Clean Room-Spaltenrichtlinien legen fest, welche Spalten aus Ihren Tabellen in Abfragen von Teilnehmern projiziert werden können. Eine Spaltenrichtlinie ist sowohl an eine Spalte als auch an eine Vorlage gebunden, sodass verschiedene Spalten mit verschiedenen Vorlagen als projiziert definiert werden können. Eine Vorlage muss in einem Clean Room vorhanden sein, bevor Sie Spaltenrichtlinien für diese Vorlage festlegen können.
Spaltenrichtlinien sind wie alle Richtlinien nur überschreiben. Das bedeutet, dass durch das Festlegen von Spaltenrichtlinien alle vorhandenen Spaltenrichtlinien, die von diesem Konto festgelegt wurden, vollständig überschrieben werden. Sowohl Anbieter als auch Verbraucher können Spaltenrichtlinien für ihre Daten festlegen. Wenn Sie keine Spaltenrichtlinie für Ihre Daten angeben, können alle Ihre Spalten projiziert werden. Erfahren Sie mehr über Spaltenrichtlinien.
Das folgende Beispiel zeigt, wie Sie die Projektion von vier Spalten aus der zuvor verknüpften Beispieldatenbank für Clean Rooms ermöglichen:
CALL samooha_by_snowflake_local_db.provider.set_column_policy($cleanroom_name, [
'prod_overlap_analysis:SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS:STATUS',
'prod_overlap_analysis:SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS:AGE_BAND',
'prod_overlap_analysis:SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS:DAYS_ACTIVE',
'prod_overlap_analysis:SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS:REGION_CODE']);
Standardversion verwenden¶
Clean Rooms sind versionierte native Anwendungen. Bestimmte Aktionen, wie das Hinzufügen von Code zu einem Clean Room, erzeugen eine neue Patchversion der Anwendung. Verbraucher müssen den Clean Room in ihrem Konto installieren. Die Version, die installiert wird, basiert auf der von Ihnen angegebenen Standardversionsnummer. Wenn Sie später eine neue Version des Clean Rooms veröffentlichen und die Standardversionsnummer erhöhen, werden alle von Verbrauchern installierten Versionen automatisch aktualisiert. Neue Installationen werden standardmäßig auf die neue Version umgestellt. Erfahren Sie mehr über die Versionierung von Clean Rooms.
Das folgende Beispiel zeigt, wie Sie die Standardversion eines Clean Rooms auf V1.0.0 einstellen. Das ist die erste Version eines Clean Rooms, wenn Sie keinen Code hochgeladen haben:
CALL samooha_by_snowflake_local_db.provider.set_default_release_directive(
$cleanroom_name,
'V1_0', -- Version number: Never changes.
'0' -- Patch number: Can change.
);
Clean Room veröffentlichen¶
Im folgenden Beispiel sehen Sie, wie Sie einen Clean Room veröffentlichen oder erneut veröffentlichen. Befolgen Sie diese Anweisung. Wenn dieser Prozess zum ersten Mal aufgerufen wird, macht er den Clean Room für alle Verbraucher, für die Sie ihn freigegeben haben, sichtbar und installierbar. Sie sollten diesen Prozess immer dann aufrufen, wenn Sie erhebliche Änderungen vornehmen, z. B. wenn Sie die Standardversion aktualisieren oder Änderungen speziell für die Clean Room UI vornehmen.
CALL samooha_By_snowflake_local_db.provider.create_or_update_cleanroom_listing(
$cleanroom_name);
Jetzt kann der Verbraucher den Clean Room installieren, Daten verknüpfen, Richtlinien festlegen und Vorlagen ausführen, wie nachfolgend beschrieben.
Tipp
Wenn Sie einen Test-Clean-Room nicht mehr benötigen, sollten Sie den Clean Room auf den Anbieter- und Verbraucherkonten löschen (provider.drop_cleanroom
und consumer.uninstall_cleanroom
). Die Anzahl der Clean Rooms und Teilnehmer pro Konto ist begrenzt. Wenn Sie viele ungenutzte Clean Rooms in Ihrem Konto lassen, können Sie Ihr Kontingent erreichen.
Schritte für Verbraucher¶
Nachdem ein Anbieter einen Clean Room veröffentlicht hat, können alle Verbraucher, die als Teilnehmer hinzugefügt wurden, den Clean Room entweder über die UI oder die API anzeigen oder installieren. In diesem Abschnitt wird gezeigt, wie ein Verbraucher mit der API einen Clean Room installieren und eine Analyse ausführen kann.
Hier ein kurzer Überblick über die Schritte, die der Verbraucher ausführt:
Umgebung einrichten
Clean Room installieren
Verknüpfungs- und Spaltenrichtlinien festsetzen
Analyse ausführen
Umgebung einrichten¶
Wie der Anbieter muss auch der Verbraucher ein Warehouse verwenden, auf das SAMOOHA_APP_ROLE zugreifen kann. Im Gegensatz zum Anbieter kann der Verbraucher jedoch die SAMOOHA_APP_ROLE-Rolle direkt für vollständigen API-Zugriff verwenden. Alternativ kann ein Clean Room-Administrator in diesem Konto eine eingeschränktere Rolle zuweisen, die Berechtigungen zum Ausführen einer Teilmenge der API für Verbraucher zuweist. Diese eingeschränkte Rolle, manchmal allgemein als „Ausführungsrolle“ bezeichnet, wird von einem Benutzer mit vollen Clean Room-Berechtigungen gewährt. Lesen Sie, wie Sie begrenzten API-Zugriff erteilen können.
Mit einer Ausführungsrolle können Sie keinen Clean Room installieren, also müssen Sie SAMOOHA_APP_ROLE, wie im folgenden Beispiel gezeigt, verwenden:
USE WAREHOUSE app_wh;
USE ROLE samooha_app_role;
Reinraum installieren¶
Der folgende Ausschnitt zeigt, wie Sie alle installierten Clean Rooms auflisten, zu deren Installation Sie eingeladen wurden:
-- See all clean rooms, installed and not.
CALL samooha_by_snowflake_local_db.consumer.view_cleanrooms();
-- See only clean rooms that aren't installed.
CALL samooha_by_snowflake_local_db.consumer.view_cleanrooms() ->>
SELECT * FROM $1
WHERE IS_ALREADY_INSTALLED = false;
Installieren Sie den Clean Room, den der Anbieter für Sie freigegeben hat, wie im folgenden Beispiel gezeigt. Sie müssen den Konto-Locator des Anbieters angeben, wenn Sie einen Clean Room installieren.
CALL samooha_by_snowflake_local_db.consumer.install_cleanroom(
$cleanroom_name,
'<PROVIDER_ACCOUNT_LOCATOR>');
Tipp
Clean Rooms haben sowohl einen Namen als auch eine ID. FürClean Rooms, die mit der API erstellt wurden, verwenden Sie den Namen des Clean Rooms überall dort, wo ein API-Prozess einen Clean Room-Namen benötigt. Für Clean Rooms, die über die UI erstellt wurden, verwenden Sie die Clean Room ID und nicht den Namen. Dies gilt immer dann, wenn ein API-Prozess einen Clean Room-Namen benötigt.
Die Clean Room UI beschriftet Clean Rooms, die mit der API als Supported with Developer APIs erstellt wurden.
Daten hinzufügen und Richtlinien festlegen¶
Wenn die Clean Room-Vorlagen es dem Verbraucher ermöglichen, seine eigenen Daten in eine Abfrage einzubinden, registriert der Verbraucher die Daten, verknüpft die Daten und legt Richtlinien fest, ähnlich wie der Anbieter. Stellen Sie sicher, dass Sie die consumer
-Versionen dieser Prozesse, wie im folgenden Beispiel gezeigt, verwenden:
-- You must use a role with MANAGE GRANTS privilege on an object to register it.
USE ROLE ACCOUNTADMIN;
CALL samooha_by_snowflake_local_db.consumer.register_db('MY_DATABASE');
-- Link some tables.
CALL samooha_by_snowflake_local_db.consumer.link_datasets(
$cleanroom_name,
['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS', 'MY_DATABASE.PUBLIC.EXPOSURES']);
Die Verknüpfungsrichtlinie des Anbieters zeigt, welche Anbieterspalten verknüpft werden können. Dieses Beispiel zeigt, wie Sie überprüfen, mit welchen Anbieterspalten Sie verknüpfen können:
CALL samooha_by_snowflake_local_db.consumer.view_provider_join_policy($cleanroom_name);
Bemerkung
Das Fehlen einer Anbieter-Verknüpfungsrichtlinie bedeutet entweder, dass der Anbieter die Verknüpfung jeder Spalte in seinen Daten zulässt oder dass der Anbieter es vorzieht, dass Sie keine Verknüpfung über seine Daten vornehmen. Wenden Sie sich an den Anbieter, um seine Absicht zu verstehen, wenn er keine Verknüpfungsrichtlinie für seine Daten implementiert.
Ein Anbieter benötigt die Genehmigung des Verbrauchers, um eine Vorlage im Clean Room auszuführen. Daher machen sich die meisten Verbraucher nicht die Mühe, Richtlinien für die Tabellen festzulegen, für die sie Verknüpfungen durchführen.
Wir empfehlen dennoch, dass Sie das Hinzufügen von Richtlinien in Betracht ziehen, falls ein Anbieter später versucht, eine Vorlage auszuführen, da Sie vergessen könnten, die entsprechenden Richtlinien zu diesem Zeitpunkt hinzuzufügen. Wenn Sie keine Verknüpfungs- oder Spalteneigenschaften für Ihre Daten festlegen, sind alle Spalten verknüpfbar und projiziert.
Analyse ausführen¶
Bevor Sie eine Vorlage ausführen, untersuchen Sie diese in der Regel, um festzustellen, was sie tut und welche Variablen sie akzeptiert. Anschließend prüfen Sie, welche Anbietertabellen im Clean Room verfügbar sind.
Vorlagen prüfen¶
Sie können die Vorlagen in einem Clean Room auflisten und den Code jeder einzelnen untersuchen (es sei denn, der Anbieter hat den Code ausdrücklich verschleiert). Dies kann nützlich sein, um Ihnen zu helfen, die Abfrage besser zu verstehen. Sie können den Clean Room auch bitten, die Vorlage zu parsen und zu zeigen, welche Variablen Sie übergeben können, wenn Sie den Code ausführen.
Sie können eine Liste von Tabellen übergeben, die in der Abfrage verwendet werden sollen, vorbehaltlich des Designs der Vorlage. Jede mit dem Clean Room verknüpfte Tabelle kann an die Vorlage übergeben werden.
Viele Vorlagen unterstützen auch Variablen, die Sie zur Laufzeit angeben können. um z. B. mit einem bestimmten Wert übereinzustimmen oder um anzugeben, welche Spalten angezeigt werden sollen. Idealerweise sollte der Anbieter Ihnen einige Informationen darüber geben, wofür die Vorlage dient und welche Argumente sie akzeptiert. Aber normalerweise möchten Sie eine Vorlage auch eingehend betrachten, um den Code zu sehen. Der folgende Ausschnitt listet die Vorlagen auf, die von einem beliebigen Teilnehmer zum Clean Room hinzugefügt wurden, und ruft die Argumente ab, die für eine bestimmte Vorlage unterstützt werden:
-- View the templates available in this clean room.
-- Also shows the template code for each template.
CALL samooha_by_snowflake_local_db.consumer.view_added_templates($cleanroom_name);
-- Show which variables can be passed in when running the specified template.
CALL samooha_by_snowflake_local_db.consumer.get_arguments_from_template(
$cleanroom_name,
$template_name
);
Tipp
Wenn Sie die my_table
-Array-Variable sehen, die in einer Vorlage verwendet wird, enthält diese die Liste der Verbraucher-Tabellennamen, die Sie übergeben, wenn Sie die Vorlage ausführen. Die source_table
-Array-Variable enthält die Liste der Anbieter-Tabellennamen, die Sie übergeben, wenn Sie die Vorlage ausführen.
Verfügbare Daten anzeigen¶
Sie können die Datensets auflisten, die Sie und der Anbieter mit einem Clean Room verknüpft haben, wie im folgenden Beispiel gezeigt:
-- See which datasets you have linked into the clean room.
CALL samooha_by_snowflake_local_db.consumer.view_consumer_datasets($cleanroom_name);
-- See which datasets the provider has linked into the clean room.
CALL samooha_by_snowflake_local_db.consumer.view_provider_datasets($cleanroom_name);
Wenn Sie einen Tabellennamen übergeben, verwenden Sie den Tabellennamen: . Verwenden Sie nicht den Anzeigenamen aus den Ergebnissen dieser Prozesse.
Vorlage ausführen¶
In den beiden vorangegangenen Schritten haben Sie gelernt, welche Daten Sie haben und welche Variablen Sie übergeben können. Sie sind nun bereit, die Analyse auszuführen.
Je nach Abfrage und Größe der Daten sollten Sie die Warehouse-Größe in etwas Geeigneteres ändern.
Das folgende Beispiel zeigt, wie ein Benutzer eine Vorlage aufrufen könnte, die sowohl Verbraucher- als auch Anbietertabellen sowie zwei Variablen enthält: dimensions
(verwendet als Gruppierungsspalte) und where_clause
(verwendet als WHERE-Klausel in einer Abfrage).
Die Vorlage führt eine Abfrage auf einer einzelnen Anbietertabelle aus, sodass in der Anfrage die Verbrauchertabellen weggelassen werden.
Im folgenden Beispiel sehen Sie, dass der dimensions
-Wert ein Spaltenname mit dem Präfix p
ist. Das p
gibt an, dass diese Spalte aus der Tabelle des Anbieters stammt, der übergeben wird. Spaltennamen erfordern normalerweise, dass Sie ein p
oder c
hinzufügen, um anzugeben, aus welcher Tabelle sie stammen – aus einer Anbieter- oder Verbrauchertabelle. So werden Spaltennamen eindeutig definiert. Diese Anforderung ist jedoch sehr vorlagenspezifisch. Sie müssen mit dem Anbieter der Vorlage kommunizieren oder den Code der Vorlage untersuchen, um zu verstehen, wann diese Präfixe erforderlich sind.
CALL samooha_by_snowflake_local_db.consumer.run_analysis(
$cleanroom_name,
$template_name,
[], -- This template doesn't accept consumer tables.
['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS'], -- Provider tables.
object_construct( -- Template-specific arguments.
'dimensions', ['p.STATUS'], -- Template takes a variable named 'dimensions'.
'where_clause', 'p.REGION_CODE=$$REGION_10$$' -- Template allows you to pass in a WHERE clause.
-- $$ is used to wrap string literals
)
);
Beispielcode¶
Die folgenden Codedateien zeigen, wie Sie eine Clean Room-Analyse erstellen, freigeben und ausführen.
Laden Sie die folgenden Beispiele herunter, und laden Sie sie dann als Arbeitsblattdateien in Ihr Snowflake-Konto hoch. Sie benötigen separate Konten für den Anbieter und den Verbraucher. Die Clean Room API muss jeweils installiert sein.