[Ultimate]{class="badge positive"}

Streaming-Quelle Snowflake

IMPORTANT
  • 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:

Standardauthentifizierung
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 snowflakecomputing.com angehängt ist. Die Kontokennung kann in verschiedenen Formaten vorliegen:

  • {ORG_NAME}-{ACCOUNT_NAME}.snowflakecomputing.com (z. B. acme-abc12345.snowflakecomputing.com)
  • {ACCOUNT_LOCATOR}.{CLOUD_REGION_ID}.snowflakecomputing.com (z. B. acme12345.ap-southeast-1.snowflakecomputing.com)
  • {ACCOUNT_LOCATOR}.{CLOUD_REGION_ID}.{CLOUD}.snowflakecomputing.com (z. B. acme12345.east-us-2.azure.snowflakecomputing.com)

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.
Schlüsselpaar-Authentifizierung

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.

Erstellen eines verschlüsselten privaten Schlüssels

Um Ihren verschlüsselten Snowflake privaten Schlüssel zu generieren, führen Sie den folgenden Befehl auf Ihrem Terminal aus:

code language-shell
openssl genrsa 2048 | openssl pkcs8 -topk8 -v2 des3 -inform PEM -out rsa_key.p8

Bei Erfolg sollten Sie Ihren privaten Schlüssel im PEM-Format erhalten.

code language-shell
-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIE6T...
-----END ENCRYPTED PRIVATE KEY-----
Erstellen eines unverschlüsselten privaten Schlüssels

Um Ihren unverschlüsselten Snowflake privaten Schlüssel zu generieren, führen Sie den folgenden Befehl auf Ihrem Terminal aus:

code language-shell
openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -out rsa_key.p8 -nocrypt

Bei Erfolg sollten Sie Ihren privaten Schlüssel im PEM-Format erhalten.

code language-shell
-----BEGIN PRIVATE KEY-----
MIIE6T...
-----END PRIVATE KEY-----

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:

Entität Snowflake
Rollenberechtigung verlangen
Warehouse
BEDIENEN, NUTZUNG
Datenbank
GEBRAUCH
Schema
GEBRAUCH
Tabelle
AUSWÄHLEN
NOTE
Die Funktion zum automatischen Fortsetzen und automatischen Aussetzen muss in den erweiterten Einstellungen Ihres Warehouse aktiviert sein.

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 oder TIMESTAMP_NTZ. Wenn die Zeitstempelspalte auf TIMESTAMP_NTZ gesetzt ist, sollte die entsprechende Zeitzone, in der die Werte gespeichert sind, über den timezoneValue 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

NOTE
Nachdem Sie einen Streaming-Datenfluss erstellt oder aktualisiert haben, ist eine kurze 5-minütige Pause bei der Datenaufnahme erforderlich, um potenzielle Instanzen von Datenverlust oder Datenverlust zu verhindern.

In diesem Tutorial erfahren Sie, wie Sie Ihre Snowflake-Streaming-Quelle mithilfe der -API mit Experience Platform verbinden:

recommendation-more-help
337b99bb-92fb-42ae-b6b7-c7042161d089