[Ultimate]{class="badge positive"}

Snowflake origine streaming

IMPORTANT
  • L'origine di streaming Snowflake è disponibile nell'API per gli utenti che hanno acquistato Real-Time CDP Ultimate.

  • È ora possibile utilizzare l'origine di streaming Snowflake durante l'esecuzione di Adobe Experience Platform su Amazon Web Services (AWS). Experience Platform in esecuzione su AWS è attualmente disponibile per un numero limitato di clienti. Per ulteriori informazioni sull'infrastruttura Experience Platform supportata, consulta la Panoramica multi-cloud di Experience Platform.

Adobe Experience Platform consente di acquisire dati da origini esterne e allo stesso tempo di strutturare, etichettare e migliorare i dati in arrivo tramite i servizi Platform. Puoi acquisire dati da diverse origini, ad esempio applicazioni Adobe, archiviazione basata su cloud, database e molte altre.

Experience Platform fornisce il supporto per lo streaming dei dati da un database Snowflake.

Informazioni sull'origine di streaming Snowflake

L'origine di flusso Snowflake funziona caricando i dati eseguendo periodicamente una query SQL e creando un record di output per ogni riga nel set risultante.

Utilizzando Kafka Connect, l'origine di streaming Snowflake tiene traccia dell'ultimo record ricevuto da ogni tabella, in modo che possa iniziare nella posizione corretta per l'iterazione successiva. L’origine utilizza questa funzionalità per filtrare i dati e ottenere solo le righe aggiornate da una tabella su ogni iterazione.

Prerequisiti

La sezione seguente descrive i passaggi preliminari da completare prima di poter inviare dati dal database Snowflake ad Experience Platform:

Indirizzo IP inserisco nell'elenco Consentiti

Prima di collegare le origini a Experience Platform, è necessario aggiungere al elenco Consentiti di indirizzi IP specifici per l’area geografica. Per ulteriori informazioni, leggere la guida in inserire nell'elenco Consentiti degli indirizzi IP per la connessione ad Experience Platform.

La documentazione seguente fornisce informazioni su come connettere Amazon Redshift ad Experience Platform tramite API o tramite l'interfaccia utente:

Raccogli le credenziali richieste

Affinché Flow Service possa connettersi a Snowflake, è necessario fornire le seguenti proprietà di connessione:

Autenticazione di base
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
Credenziali Descrizione
account

L'identificatore account completo (nome account o localizzatore account) dell'account Snowflake aggiunto al suffisso snowflakecomputing.com. L’identificatore dell’account può essere in diversi formati:

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

Per ulteriori informazioni, leggere Snowflake document on account identifiers.

warehouse Il data warehouse Snowflake gestisce il processo di esecuzione delle query per l'applicazione. Ogni data warehouse Snowflake è indipendente l'uno dall'altro e deve essere accessibile singolarmente quando si trasferiscono i dati ad Experience Platform.
database Il database Snowflake contiene i dati che si desidera inserire nell'Experience Platform.
username Nome utente per l'account Snowflake.
password Password per l'account utente Snowflake.
role (Facoltativo) Ruolo personalizzato che può essere fornito a un utente, per una determinata connessione. Se non specificato, il valore predefinito è public.
connectionSpec.id La specifica di connessione restituisce le proprietà del connettore di un'origine, incluse le specifiche di autenticazione relative alla creazione delle connessioni di base e di origine. L'ID della specifica di connessione per Snowflake è 51ae16c2-bdad-42fd-9fce-8d5dfddaf140.
Autenticazione coppia di chiavi

Per utilizzare l'autenticazione con coppia di chiavi, è necessario generare una coppia di chiavi RSA a 2048 bit e quindi fornire i seguenti valori durante la creazione di un account per l'origine Snowflake.

table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2
Credenziali Descrizione
account Un nome di account identifica in modo univoco un account all’interno dell’organizzazione. In questo caso, è necessario identificare in modo univoco un account tra diverse Snowflake organizzazioni. A questo scopo, devi anteporre il nome della tua organizzazione al nome dell’account. Esempio: orgname-account_name. Per ulteriori informazioni, consulta la guida in recupero dell'identificatore dell'account Snowflake ​. Per ulteriori informazioni, consulta la Snowflake documentazione.
username Il nome utente dell'account Snowflake.
privateKey La chiave privata con codifica Base64- del tuo account Snowflake. Puoi generare chiavi private crittografate o non crittografate. Se utilizzi una chiave privata crittografata, devi fornire anche una passphrase di chiave privata durante l’autenticazione in Experience Platform. Per ulteriori informazioni, consulta la guida in recupero della tua Snowflake chiave privata.
passphrase La passphrase è un ulteriore livello di sicurezza da utilizzare per l'autenticazione con una chiave privata crittografata. Se si utilizza una chiave privata non crittografata, non è necessario fornire la passphrase.
database Il database Snowflake che contiene i dati da acquisire in Experience Platform.
warehouse Il data warehouse Snowflake gestisce il processo di esecuzione delle query per l'applicazione. Ogni data warehouse Snowflake è indipendente l'uno dall'altro e deve essere accessibile singolarmente quando si trasferiscono i dati ad Experience Platform.

Per ulteriori informazioni su questi valori, fare riferimento alla Snowflake guida all'autenticazione con coppia di chiavi.

Recupera l’identificatore dell’account retrieve-your-account-identifier

Per autenticare l'istanza Snowflake con Experience Platform, è necessario ottenere l'identificatore dell'account dal dashboard dell'interfaccia utente Snowflake.

Per trovare l’identificatore dell’account, segui la procedura riportata di seguito:

  • Accedi al tuo account nel Snowflake dashboard dell'interfaccia utente dell'applicazione.
  • Nel menu di navigazione a sinistra, seleziona Accounts, seguito da Active Accounts dall'intestazione.
  • Quindi, seleziona l’icona delle informazioni, quindi fai clic sul nome di dominio dell’URL corrente e copialo.

Recupera la chiave privata retrieve-your-private-key

Se si prevede di utilizzare l'autenticazione con coppia di chiavi per la connessione Snowflake, è necessario generare una chiave privata prima di connettersi ad Experience Platform.

Crea una chiave privata crittografata

Per generare la chiave privata Snowflake crittografata, eseguire il comando seguente sul terminale:

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

In caso di esito positivo, dovresti ricevere la tua chiave privata in formato PEM.

code language-shell
-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIE6T...
-----END ENCRYPTED PRIVATE KEY-----
Crea una chiave privata non crittografata

Per generare la chiave privata Snowflake non crittografata, eseguire il comando seguente sul terminale:

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

In caso di esito positivo, dovresti ricevere la tua chiave privata in formato PEM.

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

Dopo aver generato la chiave privata, codificarla direttamente in Base64 senza apportare alcuna modifica al formato o al contenuto. Prima di eseguire la codifica, accertati che non vi siano spazi o righe vuote (comprese le nuove righe finali) alla fine della chiave privata.

Verifica configurazioni

Prima di poter creare una connessione di origine per i dati di Snowflake, è necessario verificare che siano soddisfatte le seguenti configurazioni:

  • Il magazzino predefinito assegnato a un determinato utente deve essere uguale al magazzino immesso durante l'autenticazione in Experience Platform.
  • Il ruolo predefinito assegnato a un determinato utente deve avere accesso allo stesso database inserito durante l’autenticazione in Experience Platform.

Per verificare il ruolo e il magazzino:

  • Selezionare Admin nel menu di navigazione a sinistra, quindi selezionare Users & Roles.
  • Selezionare l'utente appropriato, quindi selezionare i puntini di sospensione (...) nell'angolo superiore destro.
  • Nella finestra Edit user visualizzata, passa a Default Role per visualizzare il ruolo associato all'utente specificato.
  • Nella stessa finestra passare a Default Warehouse per visualizzare il magazzino associato all'utente specificato.

Una volta codificata correttamente, è possibile utilizzare la chiave privata con codifica Base64 in Experience Platform per autenticare l'account Snowflake.

Configurare le impostazioni del ruolo configure-role-settings

È necessario configurare i privilegi per un ruolo, anche se il ruolo pubblico predefinito è assegnato, per consentire alla connessione di origine di accedere al database, allo schema e alla tabella Snowflake rilevanti. I vari privilegi per le diverse entità Snowflake sono i seguenti:

Entità Snowflake
Richiedi privilegio ruolo
Data warehouse
FUNZIONAMENTO, UTILIZZO
Database
UTILIZZO
Schema
UTILIZZO
Tabella
SELEZIONA
NOTE
Nella configurazione delle impostazioni avanzate del magazzino devono essere abilitate le funzioni Ripresa automatica e Sospensione automatica.

Per ulteriori informazioni sulla gestione di ruoli e privilegi, fare riferimento al Snowflake riferimento API.

Limitazioni e domande frequenti limitations-and-frequently-asked-questions

  • La velocità effettiva dei dati per l'origine Snowflake è di 2.000 record al secondo.

  • I prezzi possono variare in base al periodo di tempo in cui è attiva una warehouse e alle dimensioni della warehouse. Per l'integrazione di origine Snowflake, è sufficiente la data warehouse di piccole dimensioni, x-small. Si consiglia di abilitare la sospensione automatica in modo che il magazzino possa sospendere da solo quando non è in uso.

  • L'origine Snowflake esegue il polling del database per i nuovi dati ogni 10 secondi.

  • Opzioni di configurazione:

    • È possibile abilitare un flag booleano backfill per l'origine Snowflake durante la creazione di una connessione di origine.

      • Se backfill è impostato su true, il valore di timestamp.initial è impostato su 0. Ciò significa che vengono recuperati dati con una colonna di marca temporale maggiore di 0 epoca.
      • Se backfill è impostato su false, il valore di timestamp.initial è impostato su -1. Ciò significa che vengono recuperati i dati con una colonna di marca temporale maggiore dell’ora corrente (l’ora in cui inizia l’acquisizione della sorgente).
    • La colonna timestamp deve essere formattata come tipo: TIMESTAMP_LTZ o TIMESTAMP_NTZ. Se la colonna timestamp è impostata su TIMESTAMP_NTZ, il fuso orario corrispondente in cui sono archiviati i valori deve essere passato tramite il parametro timezoneValue. Se non specificato, il valore predefinito è UTC.

      • Impossibile utilizzare TIMESTAMP_TZ in una colonna timestamp o in una mappatura.

Passaggi successivi

NOTE
Dopo aver creato o aggiornato un flusso di dati in streaming, è necessaria una breve pausa di 5 minuti nell’acquisizione dei dati per evitare potenziali istanze di perdita o perdita di dati.

Il seguente tutorial illustra i passaggi necessari per collegare l'origine di streaming Snowflake ad Experience Platform utilizzando l'API:

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