Carica i dati di Salesforce Marketing Cloud in BigQuery
Puoi caricare i dati da Salesforce Marketing Cloud a BigQuery utilizzando il connettore BigQuery Data Transfer Service per Salesforce Marketing Cloud. Con BigQuery Data Transfer Service, puoi pianificare job di trasferimento ricorrenti che aggiungono i dati più recenti di Salesforce Marketing Cloud a BigQuery.
Limitazioni
I trasferimenti di dati di Salesforce Marketing Cloud sono soggetti alle seguenti limitazioni:
- Una singola configurazione di trasferimento può supportare una sola esecuzione del trasferimento di dati alla volta. Nel caso in cui sia pianificata l'esecuzione di un secondo trasferimento di dati prima del completamento del primo, viene completato solo il primo trasferimento di dati, mentre gli altri trasferimenti di dati che si sovrappongono al primo vengono ignorati.
- Per evitare trasferimenti saltati all'interno di una singola configurazione del trasferimento, ti consigliamo di aumentare l'intervallo di tempo tra i trasferimenti di dati di grandi dimensioni configurando la Frequenza di ripetizione.
- Per utilizzare un collegamento di rete con questo trasferimento di dati, devi prima creare un collegamento di rete definendo un indirizzo IP statico.
- I trasferimenti di Salesforce Marketing Cloud non supportano le estensioni dati che contengono campi binari o blob di grandi dimensioni.
- Se il collegamento di rete configurato e l'istanza di macchina virtuale (VM) si trovano in regioni diverse, potrebbe verificarsi uno spostamento di dati tra regioni quando trasferisci i dati da Salesforce Marketing Cloud.
Prima di iniziare
Le sezioni seguenti descrivono i passaggi da seguire prima di creare un trasferimento di dati Salesforce Marketing Cloud.
Prerequisiti di Salesforce Marketing Cloud
Per creare un trasferimento di dati da Salesforce Marketing Cloud, devi disporre delle seguenti informazioni:
| Nome parametro | Descrizione |
|---|---|
subdomain |
Il sottodominio API, che si trova nell'URI di base. Ad esempio, nell'URI di base di autenticazione https://SUBDOMAIN.auth.marketingcloudapis.com/, SUBDOMAIN è il valore del sottodominio. |
instance |
L'istanza del server API, che si trova nell'URL dopo aver eseguito l'accesso all'applicazione Salesforce Marketing Cloud. Il valore dell'istanza include "s" seguito da un valore numerico. Ad esempio, nell'URL "https://mc.s4.exacttarget.com/", il valore dell'istanza è "s4". Per saperne di più, consulta Trova la posizione dello stack per un account Marketing Cloud. |
clientId |
L'ID client dell'integrazione API. Vai a Setup (Configurazione) > Apps (App) > Installed Packages (Pacchetti installati), quindi fai clic sul nome del pacchetto. L'ID client è elencato in Componenti. |
clientSecret |
Il client secret dell'integrazione dell'app. Vai a Setup (Configurazione) > Apps (App) > Installed Packages (Pacchetti installati), quindi fai clic sul nome del pacchetto. Il client secret è elencato in Components (Componenti). |
Salesforce Marketing Cloud objects to transfer |
Compila un elenco di oggetti Salesforce Marketing Cloud da includere in questo trasferimento. Puoi selezionare gli oggetti quando configuri un trasferimento. Per un elenco degli oggetti supportati, consulta Tabelle supportate. |
Configura la lista consentita IP per i trasferimenti da Salesforce Marketing Cloud
Devi configurare l'ambiente Google Cloud e il tuo account Salesforce Marketing Cloud per aggiungere indirizzi IP specifici alla lista consentita per i trasferimenti di dati. In questo modo, Salesforce Marketing Cloud accetta solo connessioni da un indirizzo IP statico attendibile.
Per farlo, devi prima configurare la rete Google Cloud per utilizzare un indirizzo IP statico:
- Configura un Network Address Translation (NAT) pubblico con un indirizzo IP statico all'interno della tua rete Virtual Private Cloud. Cloud NAT deve essere configurato nella stessa regione del set di dati di destinazione per questo trasferimento di dati.
- Configura un collegamento di rete all'interno della stessa rete VPC. Questa risorsa viene utilizzata da BigQuery Data Transfer Service per accedere ai servizi privati.
Successivamente, devi aggiungere l'indirizzo IP statico alla lista consentita in Salesforce Marketing Cloud. Quando aggiungi l'intervallo dell'indirizzo IP, utilizza l'indirizzo IP statico del tuo NAT pubblicoGoogle Cloud sia per l'indirizzo IP iniziale sia per quello finale dell'intervallo IP.
Dopo aver configurato gli intervalli IP, puoi specificare l'IP statico quando configuri la configurazione del trasferimento selezionando il collegamento di rete nel campo Collegamento di rete.
Requisiti degli oggetti di estensione dei dati
Per includere oggetti di estensione dei dati nel trasferimento di dati, l'oggetto deve soddisfare i seguenti requisiti:
- Il nome dell'oggetto dell'estensione dei dati deve includere il prefisso
DataExtensionObjectseguito dal nome dell'oggetto. Ad esempio,DataExtensionObject_DATA_EXTENSION_NAME. - Devi attivare l'ambito
Readper l'oggetto dell'estensione dati. - Le posizioni dei file dell'oggetto di estensione dei dati devono avere gli ambiti
ReadeWrite.
Installa e configura il pacchetto di integrazione dell'API Salesforce Marketing Cloud
Devi installare un pacchetto di integrazione API server-server in Salesforce Marketing Cloud. Puoi farlo in Salesforce Marketing Cloud installando un nuovo pacchetto installato e specificando il componente API Integration > Server-to-Server. Per saperne di più, consulta Crea e installa pacchetti.
Dopo aver installato il pacchetto di integrazione API, devi aggiungere i seguenti ambiti di autorizzazione:
- Accesso:
Offline Access - Email:
Read - OTT:
Read - Push:
Read - SMS:
Read - Web:
Read - Documenti e immagini:
Read - Contenuti salvati:
Read - Percorsi:
Read - Segmenti di pubblico:
Read - Elenco e iscritti:
Read - Estensioni di date:
Read - Posizioni dei file
Read - Eventi di monitoraggio:
Read - Callback:
Read - Abbonamenti:
Read - Campagna:
Read - Asset:
Read - Account:
Read - Canali OTT:
Read - Utenti:
Read
Per saperne di più, consulta Ambiti di autorizzazione per l'integrazione API.
Prerequisiti di BigQuery
- Verifica di aver completato tutte le azioni richieste per abilitare BigQuery Data Transfer Service.
- Crea un set di dati BigQuery per archiviare i dati.
- Se intendi configurare le notifiche di esecuzione del trasferimento per Pub/Sub, assicurati di disporre dell'autorizzazione Identity and Access Management (IAM)
pubsub.topics.setIamPolicy. Le autorizzazioni Pub/Sub non sono necessarie se configuri solo le notifiche via email. Per saperne di più, consulta Notifiche di esecuzione di BigQuery Data Transfer Service.
Ruoli BigQuery richiesti
Per ottenere le autorizzazioni necessarie per creare un trasferimento di dati BigQuery Data Transfer Service, chiedi all'amministratore di concederti il ruolo IAM Amministratore BigQuery (roles/bigquery.admin) sul tuo progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene le autorizzazioni necessarie per creare un trasferimento di dati di BigQuery Data Transfer Service. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per creare un trasferimento di dati di BigQuery Data Transfer Service sono necessarie le seguenti autorizzazioni:
-
Autorizzazioni di BigQuery Data Transfer Service:
-
bigquery.transfers.update -
bigquery.transfers.get
-
-
Autorizzazioni BigQuery:
-
bigquery.datasets.get -
bigquery.datasets.getIamPolicy -
bigquery.datasets.update -
bigquery.datasets.setIamPolicy -
bigquery.jobs.create
-
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Per saperne di più, consulta Concedi l'accesso a bigquery.admin.
Configura un trasferimento di dati da Salesforce Marketing Cloud
Aggiungi i dati di Salesforce Marketing Cloud a BigQuery configurando un trasferimento utilizzando una delle seguenti opzioni:
Console
Vai alla pagina Trasferimenti di dati nella console Google Cloud .
Fai clic su Crea trasferimento.
Nella sezione Tipo di origine, per Origine, seleziona Salesforce Marketing Cloud.
Nella sezione Dettagli origine dati, segui questi passaggi:
- Per Collegamento di rete, seleziona un collegamento di rete dal menu. Prima di poter utilizzare un collegamento di rete con questo trasferimento di dati, devi creare un collegamento di rete definendo un indirizzo IP statico.
- Per Sottodominio API, inserisci il sottodominio dell'URI di base di autenticazione.
- Per Istanza API, inserisci l'istanza API dall'URL dopo aver eseguito l'accesso all'applicazione Marketing Cloud.
- Per ID client, inserisci l'ID client del pacchetto di integrazione API.
- Per Client secret, inserisci il client secret dal pacchetto di integrazione API.
Nella sezione Impostazioni destinazione, per Set di dati, seleziona il set di dati che hai creato per archiviare i dati.
Nella sezione Nome configurazione di trasferimento, per Nome visualizzato, inserisci un nome per il trasferimento di dati.
Nella sezione Opzioni di pianificazione, segui questi passaggi:
- Nell'elenco Frequenza di ripetizione, seleziona un'opzione per specificare la frequenza con cui viene eseguito questo trasferimento di dati. Per specificare una frequenza di ripetizione personalizzata, seleziona Personalizzata. Se selezioni On demand, l'esecuzione avviene quando attivi manualmente il trasferimento.
- Se applicabile, seleziona Inizia ora o Inizia all'ora impostata e fornisci una data di inizio e un'ora di esecuzione.
(Facoltativo) Nella sezione Opzioni di notifica, segui questi passaggi:
- Per attivare le notifiche via email, fai clic sul pulsante di attivazione/disattivazione Notifica email. Quando attivi questa opzione, l'amministratore del trasferimento riceve una notifica via email quando l'esecuzione di un trasferimento non riesce.
- Per attivare le notifiche di esecuzione del trasferimento Pub/Sub per questo trasferimento, fai clic sul pulsante di attivazione/disattivazione Notifiche Pub/Sub. Puoi selezionare il nome del tuo argomento oppure fare clic su Crea un argomento per crearne uno.
Fai clic su Salva.
bq
Inserisci il comando bq mk e fornisci il flag di creazione del trasferimento --transfer_config.
bq mk --transfer_config --project_id=PROJECT_ID --data_source=DATA_SOURCE --display_name=DISPLAY_NAME --target_dataset=DATASET --params='PARAMETERS'
Sostituisci quanto segue:
PROJECT_ID(facoltativo): l'ID progetto Google Cloud . Se non viene fornito--project_idper specificare un progetto particolare, viene utilizzato il progetto predefinito.DATA_SOURCE: l'origine dati (ad esempiosaphana).DISPLAY_NAME: il nome visualizzato della configurazione del trasferimento. Il nome del trasferimento di dati può essere qualsiasi valore che ti consenta di identificare il trasferimento se devi modificarlo in un secondo momento.DATASET: il set di dati di destinazione per la configurazione del trasferimento.PARAMETERS: i parametri per la configurazione del trasferimento creata in formato JSON. Ad esempio:--params='{"param":"param_value"}'. Di seguito sono riportati i parametri per un trasferimento da Salesforce Marketing Cloud:connector.subdomain: il sottodominio dell'API.connector.instance: il valore dell'istanza API.connector.authentication.oauth.clientId: il nome dell'ID app per il client OAuth.connector.authentication.oauth.clientSecret: il secret dell'app per il client OAuth.assets: un elenco dei nomi delle tabelle Salesforce Marketing Cloud da trasferire da Salesforce Marketing Cloud nell'ambito del trasferimento.
Ad esempio, il comando seguente crea un trasferimento di dati di Salesforce Marketing Cloud nel progetto predefinito con tutti i parametri richiesti:
bq mk --transfer_config --target_dataset=mydataset --data_source=salesforce_marketing --display_name='My Transfer' --params='{"connector.subdomain": "abcd", "connector.instance": "x", "connector.authentication.oauth.clientId": "1234567890", "connector.authentication.oauth.clientSecret":"ABC12345"}'
API
Utilizza il metodo projects.locations.transferConfigs.create e fornisci un'istanza della risorsa TransferConfig.
Quando salvi la configurazione del trasferimento, il connettore Salesforce Marketing Cloud attiva automaticamente un'esecuzione del trasferimento in base all'opzione di pianificazione.
Tabelle supportate
A ogni esecuzione del trasferimento, il connettore Salesforce Marketing Cloud trasferisce tutti i dati disponibili da Salesforce Marketing Cloud a BigQuery nelle seguenti tabelle in base all'interfaccia REST:
AssetsCampaignAssetsCampaignsCategoriesEventDefinitionsFacebookMessengerPropertiesJourneyActivitiesJourneysLineMessengerPropertiesSendDefinitionsSubscriptionsDataExtensionDataExtensionObject_DATA_EXTENSION_NAMEEmailLinkSendListListSubscriberSubscriberTriggeredSendDefinition
Per eseguire manualmente un trasferimento di dati al di fuori della pianificazione regolare, puoi avviare un'esecuzione di backfill.
Mappatura dei tipi di dati
La tabella seguente mappa i tipi di dati di Salesforce Marketing Cloud ai tipi di dati BigQuery corrispondenti.
| Tipo di dati Salesforce Marketing Cloud | Tipo di dati BigQuery |
|---|---|
Boolean |
BOOLEAN |
Number |
INTEGER |
Text |
STRING |
Decimal |
FLOAT |
EmailAddress |
STRING |
Phone |
STRING |
Date |
DATE |
DateTime |
TIMESTAMP |
Locale |
STRING |
Risolvi i problemi di configurazione del trasferimento
Se riscontri problemi durante la configurazione o l'esecuzione di un trasferimento di dati Salesforce Marketing Cloud, prova i seguenti passaggi per la risoluzione dei problemi:
- Verifica che il pacchetto di integrazione API in Salesforce Marketing Cloud sia configurato specificamente per l'autenticazione Server-to-Server.
- Assicurati che l'app di autenticazione sia configurata con tutte le autorizzazioni richieste in Ambito, tra cui
Data Extensions: Read. - Per evitare timeout ed errori intermittenti, limita ogni configurazione del trasferimento a un massimo di 10 asset.
- Verifica di non trasferire estensioni dati che contengono campi binari o blob di grandi dimensioni.
Messaggi di errore
- Errore:
invalid_grant. The client's IP address is unauthorized for this account. Allowlist the client's IP address in Marketing Cloud Administration. Risoluzione:prova uno dei seguenti passaggi:
- Attiva tutti gli indirizzi IP disponibili per le risorse Google Cloud .
- Configura l'ambiente Google Cloud e l'account Salesforce Marketing Cloud per aggiungere indirizzi IP statici alla lista consentita. Per maggiori informazioni, vedi Configura la lista consentita IP per i trasferimenti Salesforce Marketing Cloud.
- Errore:
INVALID_ARGUMENT. Table tableName does not exist in asset TableName Risoluzione: assicurati che il nome dell'asset corrisponda esattamente, con distinzione tra maiuscole e minuscole, al nome nel tuo account Salesforce Marketing Cloud e che l'ambito
Data Extensions: Readsia concesso. Quando trasferisci i dati delle righe per un'estensione dati, il nome deve seguire il pattern esatto:DataExtensionObject_DATA_EXTENSION_NAME. Per saperne di più, consulta i prerequisiti di Salesforce Marketing Cloud.- Problema: il trasferimento è andato a buon fine, ma non vengono caricati record
Risoluzione: per leggere i contenuti di un'estensione dati, devi disporre delle autorizzazioni
ReadeWriteper Posizioni file. Verifica che gli ambiti di Salesforce Marketing Cloud includanoFile Locations: Read, Write.- Errore:
FAILED_PRECONDITION: There was an issue connecting to API. Risoluzione: questo errore può verificarsi quando includi un collegamento di rete nel trasferimento, ma non hai configurato il Public NAT e impostato la lista consentita di IP. Per risolvere questo errore, segui i passaggi descritti in Crea un collegamento di rete e segui i passaggi per creare il collegamento di rete definendo un indirizzo IP statico.
Prezzi
Per informazioni sui prezzi dei trasferimenti da Salesforce Marketing Cloud, consulta Prezzi di Data Transfer Service.
Passaggi successivi
- Per una panoramica di BigQuery Data Transfer Service, consulta Introduzione a BigQuery Data Transfer Service.
- Per informazioni sull'utilizzo dei trasferimenti di dati, tra cui come ottenere informazioni su una configurazione di trasferimento, elencare le configurazioni di trasferimento e visualizzare la cronologia di esecuzione di un trasferimento, consulta Gestisci i trasferimenti.
- Scopri come caricare i dati con le operazioni di BigQuery Omni.