[Ultimate]{class="badge positive"}

Conectar Snowflake a Experience Platform mediante la API Flow Service

IMPORTANT
El origen Snowflake está disponible en el catálogo de orígenes para los usuarios que han adquirido Real-Time Customer Data Platform Ultimate.

Lea esta guía para saber cómo conectar su cuenta de origen de Snowflake a Adobe Experience Platform mediante la Flow Service API.

Introducción

Esta guía requiere una comprensión práctica de los siguientes componentes de Adobe Experience Platform:

  • Fuentes: Experience Platform permite la ingesta de datos de varias fuentes al tiempo que le ofrece la capacidad de estructurar, etiquetar y mejorar los datos entrantes mediante los servicios de Experience Platform.
  • Zonas protegidas: Experience Platform proporciona zonas protegidas virtuales que dividen una sola instancia de Experience Platform en entornos virtuales independientes para ayudar a desarrollar y evolucionar aplicaciones de experiencia digital.

Uso de API de Experience Platform

Para obtener información sobre cómo realizar llamadas correctamente a las API de Experience Platform, consulte la guía sobre introducción a las API de Experience Platform.

La siguiente sección proporciona información adicional que necesitará conocer para conectarse correctamente a Snowflake mediante la API Flow Service.

Recopilar credenciales necesarias

Lea la Snowflake descripción general para obtener información sobre la autenticación.

Conectar Snowflake a Experience Platform en Azure azure

WARNING
La autenticación básica (o autenticación de clave de cuenta) para el origen Snowflake quedará obsoleta en noviembre de 2025. Debe pasar a la autenticación basada en pares de claves para seguir utilizando el origen e introduciendo datos de la base de datos en Experience Platform. Para obtener más información sobre la obsolescencia, lea la Snowflake guía de prácticas recomendadas sobre cómo mitigar los riesgos de compromiso de credenciales.

Lea los pasos siguientes para obtener información sobre cómo conectar su origen de Snowflake a Experience Platform en Azure.

NOTE
Debe establecer el indicador PREVENT_UNLOAD_TO_INLINE_URL en FALSE para permitir la descarga de datos de la base de datos Snowflake en Experience Platform.

Crear una conexión base para Snowflake en Experience Platform en Azure azure-base

Una conexión base retiene información entre el origen y Experience Platform, incluidas las credenciales de autenticación del origen, el estado actual de la conexión y el identificador único de la conexión base. El ID de conexión base le permite explorar y navegar por archivos desde el origen e identificar los elementos específicos que desea introducir, incluida la información sobre sus tipos de datos y formatos.

Para crear un identificador de conexión base, realice una petición POST al extremo /connections y proporcione sus credenciales de autenticación Snowflake como parte del cuerpo de la solicitud.

Formato de API

POST /connections
CadenaDeConexión
accordion
Solicitud

La siguiente solicitud crea una conexión base para 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
Propiedad Descripción
auth.params.connectionString Cadena de conexión utilizada para conectarse a la instancia Snowflake. El patrón de cadena de conexión de Snowflake es jdbc:snowflake://{ACCOUNT_NAME}.snowflakecomputing.com/?user={USERNAME}&password={PASSWORD}&db={DATABASE}&warehouse={WAREHOUSE}.
connectionSpec.id Identificador de especificación de conexión Snowflake: b2e08744-4f1a-40ce-af30-7abac3e23cf3.
accordion
Respuesta

Una respuesta correcta devuelve la conexión recién creada, incluido su identificador de conexión único (id). Este ID es necesario para explorar los datos en el siguiente tutorial.

code language-json
{
    "id": "2fce94c1-9a93-4971-8e94-c19a93097129",
    "etag": "\"d403848a-0000-0200-0000-5e978f7b0000\""
}
Autenticación de par de claves con clave privada cifrada
accordion
Solicitud
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
Propiedad Descripción
auth.params.account El nombre de su cuenta de Snowflake.
auth.params.username El nombre de usuario asociado con su cuenta de Snowflake.
auth.params.database Base de datos Snowflake de la que se extraerán los datos.
auth.params.privateKey La clave privada cifrada Base64- de su cuenta Snowflake.
auth.params.privateKeyPassphrase La frase de contraseña que corresponde con su clave privada.
auth.params.warehouse El almacén de Snowflake que está utilizando.
connectionSpec.id Identificador de especificación de conexión Snowflake: b2e08744-4f1a-40ce-af30-7abac3e23cf3.
accordion
Respuesta

Una respuesta correcta devuelve detalles de la conexión recién creada, incluido su identificador único (id).

code language-json
{
    "id": "2fce94c1-9a93-4971-8e94-c19a93097129",
    "etag": "\"d403848a-0000-0200-0000-5e978f7b0000\""
}
Autenticación de par de claves con clave privada no cifrada
accordion
Solicitud
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 unencrypted private key",
      "description": "Snowflake base connection with unencrypted 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
Propiedad Descripción
auth.params.account El nombre de su cuenta de Snowflake.
auth.params.username El nombre de usuario asociado con su cuenta de Snowflake.
auth.params.database Base de datos Snowflake de la que se extraerán los datos.
auth.params.privateKey La clave privada no cifrada Base64- de su cuenta Snowflake.
auth.params.warehouse El almacén de Snowflake que está utilizando.
connectionSpec.id Identificador de especificación de conexión Snowflake: b2e08744-4f1a-40ce-af30-7abac3e23cf3.
accordion
Respuesta

Una respuesta correcta devuelve detalles de la conexión recién creada, incluido su identificador único (id).

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

Conectar Snowflake a Experience Platform en Amazon Web Service (AWS) aws

AVAILABILITY
Esta sección se aplica a las implementaciones de Experience Platform que se ejecutan en Amazon Web Service (AWS). Experience Platform que se ejecuta en AWS está disponible actualmente para un número limitado de clientes. Para obtener más información sobre la infraestructura de Experience Platform compatible, consulte la descripción general de la nube múltiple de Experience Platform.

Lea los pasos siguientes para obtener información sobre cómo conectar su origen de Snowflake a Experience Platform en AWS.

Crear una conexión base para Snowflake en Experience Platform en AWS aws-base

Formato de API

POST /connections
Autenticación básica

La siguiente solicitud crea una conexión base para que Snowflake ingrese datos en Experience Platform en AWS:

accordion
Solicitud
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 for Experience Platform on AWS",
      "description": "Snowflake base connection for Experience Platform on AWS",
      "auth": {
          "specName": "Basic Authentication",
          "params": {
              "host": "acme.snowflakecomputing.com",
              "port": "443",
              "username": "acme-cj123",
              "password": "{PASSWORD}",
              "database": "ACME_DB",
              "warehouse": "COMPUTE_WH",
              "schema": "{SCHEMA}"
          }
      },
      "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
Propiedad Descripción
auth.params.host La URL de host a la que se conecta su cuenta de Snowflake.
auth.params.port Número de puerto que usa Snowflake al conectarse a un servidor a través de Internet.
auth.params.username El nombre de usuario asociado con su cuenta de Snowflake.
auth.params.database Base de datos Snowflake de la que se extraerán los datos.
auth.params.password La contraseña asociada a su cuenta de Snowflake.
auth.params.warehouse El almacén de Snowflake que está utilizando.
auth.params.schema Nombre del esquema asociado con la base de datos Snowflake. Debe asegurarse de que el usuario al que desea otorgar acceso a la base de datos también tenga acceso a este esquema.
accordion
Respuesta

Una respuesta correcta devuelve detalles de la conexión recién creada, incluido su identificador único (id).

code language-json
{
    "id": "4cb0c374-d3bb-4557-b139-5712880adc55",
    "etag": "\"1700d77b-0000-0200-0000-5e3b41a10000\""
}
Autenticación de par de claves con clave privada no cifrada
accordion
Solicitud
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 unencrypted private key",
      "description": "Snowflake base connection with unencrypted 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
Propiedad Descripción
auth.params.account El nombre de su cuenta de Snowflake.
auth.params.username El nombre de usuario asociado con su cuenta de Snowflake.
auth.params.database Base de datos Snowflake de la que se extraerán los datos.
auth.params.privateKey La clave privada no cifrada Base64- de su cuenta Snowflake.
auth.params.warehouse El almacén de Snowflake que está utilizando.
connectionSpec.id Identificador de especificación de conexión Snowflake: b2e08744-4f1a-40ce-af30-7abac3e23cf3.
accordion
Respuesta

Una respuesta correcta devuelve detalles de la conexión recién creada, incluido su identificador único (id).

code language-json
{
    "id": "4cb0c374-d3bb-4557-b139-5712880adc55",
    "etag": "\"1700d77b-0000-0200-0000-5e3b41a10000\""
}

Siguiendo este tutorial, ha creado una conexión base Snowflake mediante la API Flow Service. Puede utilizar este ID de conexión base en los siguientes tutoriales:

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