[Ultimate]{class="badge positive"}

Erstellen einer Snowflake-Basisverbindung mithilfe der Flow Service-API

IMPORTANT
Die Quelle "Snowflake" steht Benutzern, die Real-time Customer Data Platform Ultimate erworben haben, im Quellkatalog zur Verfügung.

Eine Basisverbindung stellt die authentifizierte Verbindung zwischen einer Quelle und Adobe Experience Platform dar.

Verwenden Sie das folgende Tutorial, um zu erfahren, wie Sie mit der [Flow Service API] (https://www.adobe.io/experience-platform-apis/references/flow-service/) eine Basisverbindung für Snowflake erstellen.

Erste Schritte

Dieses Handbuch setzt ein Verständnis der folgenden Komponenten von Adobe Experience Platform voraus:

  • Quellen: Experience Platform ermöglicht die Aufnahme von Daten aus verschiedenen Quellen und bietet Ihnen die Möglichkeit, die eingehenden Daten mithilfe von Platform-Services zu strukturieren, zu kennzeichnen und anzureichern.
  • Sandboxes: Experience Platform bietet virtuelle Sandboxes, die eine einzelne Platform-Instanz in separate virtuelle Umgebungen unterteilen, damit Sie Programme für digitale Erlebnisse entwickeln und weiterentwickeln können.

Verwenden von Platform-APIs

Informationen darüber, wie Sie Platform-APIs erfolgreich aufrufen können, finden Sie im Handbuch unter Erste Schritte mit Platform-APIs.

Im folgenden Abschnitt finden Sie weitere Informationen, die Sie benötigen, um mithilfe der Flow Service -API erfolgreich eine Verbindung zu Snowflake herstellen zu können.

Sammeln erforderlicher Anmeldeinformationen

Sie müssen Werte für die folgenden Berechtigungseigenschaften angeben, um Ihre Snowflake -Quelle zu authentifizieren.

Authentifizierung des Kontoschlüssels
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 Ein Kontoname identifiziert ein Konto in Ihrer Organisation eindeutig. In diesem Fall müssen Sie ein Konto für verschiedene Snowflake -Organisationen eindeutig identifizieren. Dazu müssen Sie dem Kontonamen den Namen Ihres Unternehmens voranstellen. Beispiel: orgname-account_name. Weitere Informationen zu Kontonamen finden Sie in der Dokumentation Snowflake unter Kontokennung.
warehouse Das Snowflake-Warehouse verwaltet den Abfrageausführungsprozess für die Anwendung. Jedes Snowflake-Warehouse ist unabhängig voneinander und muss einzeln aufgerufen werden, wenn Daten an Platform übermittelt werden.
database Die Snowflake -Datenbank enthält die Daten, die Sie an die Plattform übermitteln möchten.
username Der Benutzername für das Snowflake-Konto.
password Das Kennwort für das Snowflake -Benutzerkonto.
role Die standardmäßige Zugriffssteuerungsrolle, die in der Snowflake -Sitzung verwendet werden soll. Die Rolle sollte eine bestehende sein, die dem angegebenen Benutzer bereits zugewiesen wurde. Die Standardrolle ist PUBLIC.
connectionString Die Verbindungszeichenfolge, die für die Verbindung mit Ihrer Snowflake-Instanz verwendet wird. Das Verbindungszeichenfolgenmuster für Snowflake ist jdbc:snowflake://{ACCOUNT_NAME}.snowflakecomputing.com/?user={USERNAME}&password={PASSWORD}&db={DATABASE}&warehouse={WAREHOUSE}
Authentifizierung mit Schlüsselpaaren

Um die Schlüsselpaar-Authentifizierung zu verwenden, müssen Sie ein 2048-Bit-RSA-Schlüsselpaar generieren und dann beim Erstellen eines Kontos für Ihre Snowflake-Quelle die folgenden Werte angeben.

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 in Ihrer Organisation eindeutig. In diesem Fall müssen Sie ein Konto für verschiedene Snowflake -Organisationen eindeutig identifizieren. Dazu müssen Sie dem Kontonamen den Namen Ihres Unternehmens voranstellen. Beispiel: orgname-account_name. Weitere Informationen zu Kontonamen finden Sie in der Dokumentation Snowflake unter Kontokennung.
username Der Benutzername Ihres Snowflake-Kontos.
privateKey Der Base64-kodierte private Schlüssel Ihres Snowflake-Kontos. 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 bei der Authentifizierung bei Experience Platform auch eine Passphrase für den privaten Schlüssel angeben.
privateKeyPassphrase Die Passphrase des privaten Schlüssels 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 bereitstellen, wenn Sie einen unverschlüsselten privaten Schlüssel verwenden.
database Die Snowflake -Datenbank, die die Daten enthält, die Sie auf Experience Platform erfassen möchten.
warehouse Das Snowflake-Warehouse verwaltet den Abfrageausführungsprozess für die Anwendung. Jedes Snowflake-Warehouse ist unabhängig voneinander und muss einzeln aufgerufen werden, wenn Daten an Experience Platform übermittelt werden.

Weitere Informationen zu diesen Werten finden Sie im Snowflake Authentifizierungshandbuch für Schlüsselpaare.

NOTE
Sie müssen die PREVENT_UNLOAD_TO_INLINE_URL -Markierung auf FALSE setzen, damit das Entladen von Daten aus Ihrer Snowflake-Datenbank auf Experience Platform zugelassen wird.

Erstellen einer Basisverbindung

Bei einer Basisverbindung werden Informationen zwischen Ihrer Quelle und Platform gespeichert, einschließlich der Authentifizierungsdaten Ihrer Quelle, des aktuellen Verbindungsstatus und Ihrer eindeutigen Kennung der Basisverbindung. Mit der Kennung der Basisverbindung können Sie Dateien aus Ihrer Quelle heraus analysieren und darin navigieren und die spezifischen Elemente identifizieren, die Sie erfassen möchten, einschließlich Informationen zu ihren Datentypen und Formaten.

Um eine Basis-Verbindungs-ID zu erstellen, stellen Sie eine POST-Anfrage an den /connections -Endpunkt und geben Sie dabei Ihre Snowflake-Authentifizierungsdaten als Teil des Anfragetexts an.

API-Format

POST /connections
ConnectionString
accordion
Anfrage

Die folgende Anfrage erstellt eine Basisverbindung für Snowflake:

code language-shell
curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/connections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Snowflake base connection",
      "description": "Snowflake base connection",
      "auth": {
          "specName": "ConnectionString",
          "params": {
              "connectionString": "jdbc:snowflake://{ACCOUNT_NAME}.snowflakecomputing.com/?user={USERNAME}&password={PASSWORD}&db={DATABASE}&warehouse={WAREHOUSE}"
          }
      },
      "connectionSpec": {
          "id": "b2e08744-4f1a-40ce-af30-7abac3e23cf3",
          "version": "1.0"
      }
  }'
table 0-row-2 1-row-2 2-row-2
Eigenschaft Beschreibung
auth.params.connectionString Die Verbindungszeichenfolge, die für die Verbindung mit Ihrer Snowflake-Instanz verwendet wird. Das Verbindungszeichenfolgenmuster für Snowflake ist jdbc:snowflake://{ACCOUNT_NAME}.snowflakecomputing.com/?user={USERNAME}&password={PASSWORD}&db={DATABASE}&warehouse={WAREHOUSE}.
connectionSpec.id Die Snowflake Verbindungsspezifikations-ID: b2e08744-4f1a-40ce-af30-7abac3e23cf3.
accordion
Antwort

Eine erfolgreiche Antwort gibt die neu erstellte Verbindung zurück, einschließlich der eindeutigen Verbindungskennung (id). Diese ID ist erforderlich, um Ihre Daten im nächsten Tutorial zu untersuchen.

code language-json
{
    "id": "2fce94c1-9a93-4971-8e94-c19a93097129",
    "etag": "\"d403848a-0000-0200-0000-5e978f7b0000\""
}
Schlüsselpaar-Authentifizierung mit verschlüsseltem privaten Schlüssel
accordion
Anfrage
code language-shell
curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/connections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Snowflake base connection with encrypted private key",
      "description": "Snowflake base connection with encrypted private key",
      "auth": {
        "specName": "KeyPair Authentication",
        "params": {
            "account": "acme-snowflake123",
            "username": "acme-cj123",
            "database": "ACME_DB",
            "privateKey": "{BASE_64_ENCODED_PRIVATE_KEY}",
            "privateKeyPassphrase": "abcd1234",
            "warehouse": "COMPUTE_WH"
        }
    },
    "connectionSpec": {
        "id": "b2e08744-4f1a-40ce-af30-7abac3e23cf3",
        "version": "1.0"
    }
  }'
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
Eigenschaft Beschreibung
auth.params.account Der Name Ihres Snowflake-Kontos.
auth.params.username Der Benutzername, der Ihrem Snowflake -Konto zugeordnet ist.
auth.params.database Die Snowflake-Datenbank, aus der die Daten abgerufen werden.
auth.params.privateKey Der Base64-kodierte verschlüsselte private Schlüssel Ihres Snowflake-Kontos.
auth.params.privateKeyPassphrase Die Passphrase, die Ihrem privaten Schlüssel entspricht.
auth.params.warehouse Das von Ihnen verwendete Snowflake-Warehouse.
connectionSpec.id Die Snowflake Verbindungsspezifikations-ID: b2e08744-4f1a-40ce-af30-7abac3e23cf3.
accordion
Antwort

Eine erfolgreiche Antwort gibt die neu erstellte Verbindung zurück, einschließlich der eindeutigen Verbindungskennung (id). Diese ID ist erforderlich, um Ihre Daten im nächsten Tutorial zu untersuchen.

code language-json
{
    "id": "2fce94c1-9a93-4971-8e94-c19a93097129",
    "etag": "\"d403848a-0000-0200-0000-5e978f7b0000\""
}
Schlüsselpaar-Authentifizierung mit unverschlüsseltem privaten Schlüssel
accordion
Anfrage
code language-shell
curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/connections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Snowflake base connection with encrypted private key",
      "description": "Snowflake base connection with encrypted private key",
      "auth": {
        "specName": "KeyPair Authentication",
        "params": {
            "account": "acme-snowflake123",
            "username": "acme-cj123",
            "database": "ACME_DB",
            "privateKey": "{BASE_64_ENCODED_PRIVATE_KEY}",
            "warehouse": "COMPUTE_WH"
        }
    },
    "connectionSpec": {
        "id": "b2e08744-4f1a-40ce-af30-7abac3e23cf3",
        "version": "1.0"
    }
  }'
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2
Eigenschaft Beschreibung
auth.params.account Der Name Ihres Snowflake-Kontos.
auth.params.username Der Benutzername, der Ihrem Snowflake -Konto zugeordnet ist.
auth.params.database Die Snowflake-Datenbank, aus der die Daten abgerufen werden.
auth.params.privateKey Der Base64–kodierte, unverschlüsselte private Schlüssel Ihres Snowflake-Kontos.
auth.params.warehouse Das von Ihnen verwendete Snowflake-Warehouse.
connectionSpec.id Die Snowflake Verbindungsspezifikations-ID: b2e08744-4f1a-40ce-af30-7abac3e23cf3.
accordion
Antwort

Eine erfolgreiche Antwort gibt die neu erstellte Verbindung zurück, einschließlich der eindeutigen Verbindungskennung (id). Diese ID ist erforderlich, um Ihre Daten im nächsten Tutorial zu untersuchen.

code language-json
{
    "id": "2fce94c1-9a93-4971-8e94-c19a93097129",
    "etag": "\"d403848a-0000-0200-0000-5e978f7b0000\""
}

In diesem Tutorial haben Sie eine Snowflake-Basisverbindung mithilfe der Flow Service-API erstellt. Sie können diese Basisverbindungs-ID in den folgenden Tutorials verwenden:

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