[Ultimate]{class="badge positive"}
Streaming-Quelle Snowflake
-
Die Snowflake Streaming-Quelle ist in der API für Benutzende verfügbar, die Real-Time CDP Ultimate erworben haben.
-
Sie können jetzt die Snowflake Streaming-Quelle verwenden, wenn Sie Adobe Experience Platform auf Amazon Web Services (AWS) ausführen. Experience Platform, das auf AWS ausgeführt wird, steht derzeit einer begrenzten Anzahl von Kunden zur Verfügung. Weitere Informationen zur unterstützten Experience Platform-Infrastruktur finden Sie in der Übersicht zur Experience Platform Multi-Cloud.
Adobe Experience Platform ermöglicht die Aufnahme von Daten aus externen Quellen und bietet spezielle Experience Platform-Services, mittels derer Sie eingehende Daten strukturieren, beschriften und erweitern können. Daten können aus verschiedensten Quellen aufgenommen werden, darunter etwa Adobe-Programme, Cloud-basierte Datenspeicher und Datenbanken.
Experience Platform unterstützt das Streaming von Daten aus einer Snowflake.
Verstehen der Snowflake Streaming-Quelle
Die Snowflake-Streaming-Quelle lädt Daten durch periodisches Ausführen einer SQL-Abfrage und Erstellen eines Ausgabedatensatzes für jede Zeile im resultierenden Satz.
Durch Verwendung von Kafka Connect verfolgt die Snowflake-Streaming-Quelle den neuesten Datensatz, den sie von jeder Tabelle erhält, sodass sie an der richtigen Stelle für die nächste Iteration beginnen kann. Die Quelle verwendet diese Funktion zum Filtern von Daten und ruft bei jeder Iteration nur die aktualisierten Zeilen aus einer Tabelle ab.
Voraussetzungen
Im folgenden Abschnitt werden die erforderlichen Schritte beschrieben, die ausgeführt werden müssen, bevor Sie Daten aus Ihrer Snowflake an Experience Platform streamen können:
Zulassungsliste von IP-Adressen
Sie müssen Ihrer Zulassungsliste regionsspezifische IP-Adressen hinzufügen, bevor Sie Ihre Quellen mit Experience Platform verbinden. Weitere Informationen finden Sie im Handbuch unter Zulassungsauflistung von IP-Adressen für die Verbindung mit Experience Platform .
Die folgende Dokumentation enthält Informationen zum Verbinden von Amazon Redshift mit Experience Platform mithilfe von APIs oder der Benutzeroberfläche:
Sammeln erforderlicher Anmeldedaten
Damit Flow Service eine Verbindung mit Snowflake herstellen kann, müssen Sie die folgenden Verbindungseigenschaften angeben:
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 | |
---|---|
Anmeldedaten | Beschreibung |
account |
Die vollständige Kontokennung (Kontoname oder Konto-Locator) Ihres Snowflake Kontos, an die das Suffix
Weitere Informationen finden Sie im Snowflake document on account identifiers. |
warehouse |
Das Snowflake Warehouse verwaltet den Abfrageausführungsprozess für das Programm. Jedes Snowflake Warehouse ist unabhängig voneinander und muss beim Übermitteln von Daten an Experience Platform einzeln aufgerufen werden. |
database |
Die Snowflake-Datenbank enthält die Daten, die Sie mit der Experience Platform verknüpfen möchten. |
username |
Der Benutzername für das Snowflake. |
password |
Das Kennwort für das Snowflake Benutzerkonto. |
role |
(Optional) Eine benutzerdefinierte Rolle, die für einen Benutzer für eine bestimmte Verbindung bereitgestellt werden kann. Wenn kein Wert angegeben wird, ist dieser Standardwert public . |
connectionSpec.id |
Die Verbindungsspezifikation gibt die Connector-Eigenschaften einer Quelle zurück, einschließlich der Authentifizierungsspezifikationen für die Erstellung der Basis- und Quellverbindungen. Die Verbindungsspezifikations-ID für Snowflake ist 51ae16c2-bdad-42fd-9fce-8d5dfddaf140 . |
Um die Schlüsselpaar-Authentifizierung zu verwenden, müssen Sie ein 2048-Bit-RSA-Schlüsselpaar generieren und dann die folgenden Werte angeben, wenn Sie ein Konto für Ihre Snowflake erstellen.
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 | |
---|---|
Anmeldedaten | Beschreibung |
account |
Ein Kontoname identifiziert ein Konto innerhalb Ihrer Organisation eindeutig. In diesem Fall müssen Sie ein Konto über verschiedene Snowflake hinweg eindeutig identifizieren. Dazu müssen Sie dem Kontonamen den Namen Ihres Unternehmens voranstellen. Beispiel: orgname-account_name . Weitere Anleitungen finden Sie im Handbuch Abrufen Snowflake Kontokennung . Weiterführende Informationen dazu finden Sie im Snowflake entsprechenden Handbuch. |
username |
Der Benutzername Ihres Snowflake. |
privateKey |
Der Base64-kodierte private Schlüssel Ihres Snowflake. Sie können entweder verschlüsselte oder unverschlüsselte private Schlüssel generieren. Wenn Sie einen verschlüsselten privaten Schlüssel verwenden, müssen Sie auch eine Passphrase für den privaten Schlüssel angeben, wenn Sie sich bei Experience Platform authentifizieren. Weitere Informationen finden Sie im Handbuch unter Abrufen Snowflake privaten Schlüssels). |
passphrase |
Die Passphrase ist eine zusätzliche Sicherheitsebene, die Sie bei der Authentifizierung mit einem verschlüsselten privaten Schlüssel verwenden müssen. Sie müssen die Passphrase nicht angeben, wenn Sie einen unverschlüsselten privaten Schlüssel verwenden. |
database |
Die Snowflake, die die Daten enthält, die in Experience Platform aufgenommen werden sollen. |
warehouse |
Das Snowflake Warehouse verwaltet den Abfrageausführungsprozess für das Programm. Jedes Snowflake Warehouse ist unabhängig voneinander und muss beim Übermitteln von Daten an Experience Platform einzeln aufgerufen werden. |
Weitere Informationen zu diesen Werten finden Sie im Snowflake Handbuch zur Schlüsselpaar-Authentifizierung.
Kontokennung abrufen retrieve-your-account-identifier
Um Ihre Snowflake-Instanz bei Experience Platform zu authentifizieren, müssen Sie Ihre Kontokennung über das Dashboard der Snowflake-Benutzeroberfläche abrufen.
Gehen Sie wie folgt vor, um Ihre Kontokennung zu finden:
- Navigieren Sie im Dashboard der Snowflake -Benutzeroberfläche zu Ihrem .
- Wählen Sie in der linken Navigationsleiste Accounts und dann Active Accounts aus der Kopfzeile aus.
- Klicken Sie anschließend auf das Informationssymbol und wählen Sie den Domain-Namen der aktuellen URL aus und kopieren Sie ihn.
Privaten Schlüssel abrufen retrieve-your-private-key
Wenn Sie die Schlüsselpaar-Authentifizierung für Ihre Snowflake-Verbindung verwenden möchten, müssen Sie einen privaten Schlüssel generieren, bevor Sie eine Verbindung mit Experience Platform herstellen.
Um Ihren verschlüsselten Snowflake privaten Schlüssel zu generieren, führen Sie den folgenden Befehl auf Ihrem Terminal aus:
code language-shell |
---|
|
Bei Erfolg sollten Sie Ihren privaten Schlüssel im PEM-Format erhalten.
code language-shell |
---|
|
Um Ihren unverschlüsselten Snowflake privaten Schlüssel zu generieren, führen Sie den folgenden Befehl auf Ihrem Terminal aus:
code language-shell |
---|
|
Bei Erfolg sollten Sie Ihren privaten Schlüssel im PEM-Format erhalten.
code language-shell |
---|
|
Nachdem Sie den privaten Schlüssel generiert haben, kodieren Sie ihn direkt in Base64, ohne Änderungen an seinem Format oder Inhalt vorzunehmen. Stellen Sie vor der Kodierung sicher, dass am Ende des privaten Schlüssels keine zusätzlichen Leerzeichen oder Leerzeilen (einschließlich nachfolgender Zeilenumbrüche) vorhanden sind.
Überprüfen von Konfigurationen
Bevor Sie eine Quellverbindung für Ihre Snowflake erstellen können, müssen Sie auch sicherstellen, dass die folgenden Konfigurationen erfüllt sind:
- Das einem bestimmten Benutzer zugewiesene Standard-Warehouse muss mit dem Warehouse identisch sein, das Sie bei der Authentifizierung bei Experience Platform eingegeben haben.
- Die Standardrolle, die einem bestimmten Benutzer zugewiesen ist, muss Zugriff auf dieselbe Datenbank haben, die Sie bei der Authentifizierung bei Experience Platform eingegeben haben.
So überprüfen Sie Ihre Rolle und Ihr Warehouse:
- Wählen Sie in der linken Navigationsleiste Admin und dann Users & Roles aus.
- Wählen Sie den entsprechenden Benutzer aus und klicken Sie dann oben rechts auf die Auslassungspunkte (
...
). - Navigieren Sie im sich öffnenden Edit user zu Default Role, um die Rolle anzuzeigen, die dem jeweiligen Benutzer zugeordnet ist.
- Navigieren Sie im selben Fenster zu Default Warehouse , um das mit dem jeweiligen Benutzer verknüpfte Warehouse anzuzeigen.
Nach erfolgreicher Kodierung können Sie diesen Base64 privaten Schlüssel auf Experience Platform zur Authentifizierung Ihres Snowflake-Kontos verwenden.
Konfigurieren von Rolleneinstellungen configure-role-settings
Sie müssen Berechtigungen für eine Rolle konfigurieren, auch wenn die standardmäßige öffentliche Rolle zugewiesen ist, damit Ihre Quellverbindung auf die entsprechende Snowflake-Datenbank, das Schema und die entsprechende Tabelle zugreifen kann. Die verschiedenen Berechtigungen für verschiedene Snowflake-Entitäten lauten wie folgt:
Weitere Informationen zur Rollen- und Berechtigungsverwaltung finden Sie in der Snowflake API-Referenz.
Einschränkungen und häufig gestellte Fragen limitations-and-frequently-asked-questions
-
Der Datendurchsatz für die Snowflake beträgt 2000 Datensätze pro Sekunde.
-
Die Preise variieren je nach der Zeit, die ein Lager aktiv ist, und der Größe des Lagers. Für die Snowflake-Quellintegration genügt ein kleinstes X-kleines Warehouse. Es wird empfohlen, das automatische Aussetzen zu aktivieren, damit das Warehouse bei Nichtverwendung selbstständig aussetzen kann.
-
Die Snowflake fragt alle 10 Sekunden die Datenbank nach neuen Daten ab.
-
Konfigurationsoptionen:
-
Sie können beim Erstellen einer Quellverbindung ein
backfill
boolesches Flag für Ihre Snowflake-Quelle aktivieren.- Wenn die Aufstockung auf „true“ gesetzt ist, wird der Wert für „timestamp.initial“ auf 0 gesetzt. Das bedeutet, dass Daten mit einer Zeitstempelspalte größer als 0 Epochenzeit abgerufen werden.
- Wenn die Aufstockung auf „false“ festgelegt ist, wird der Wert für „timestamp.initial“ auf -1 festgelegt. Das bedeutet, dass Daten mit einer Zeitstempelspalte abgerufen werden, die größer ist als die aktuelle Zeit (die Zeit, in der die Quelle mit der Aufnahme beginnt).
-
Die Zeitstempelspalte sollte als Typ formatiert sein:
TIMESTAMP_LTZ
oderTIMESTAMP_NTZ
. Wenn die Zeitstempelspalte aufTIMESTAMP_NTZ
gesetzt ist, sollte die entsprechende Zeitzone, in der die Werte gespeichert sind, über dentimezoneValue
Parameter weitergeleitet werden. Wenn kein Wert angegeben wird, wird standardmäßig UTC verwendet.TIMESTAMP_TZ
kann weder in einer Zeitstempelspalte noch in einer Zuordnung verwendet werden.
-
Nächste Schritte
In diesem Tutorial erfahren Sie, wie Sie Ihre Snowflake-Streaming-Quelle mithilfe der -API mit Experience Platform verbinden: