Integrazione con Salesforce Marketing Cloud

Questa pagina descrive le configurazioni richieste per importare i dati da Salesforce Marketing Cloud (SFMC) come origine dati del workload di marketing di Cortex Framework Data Foundation.

SFMC è una piattaforma di automazione del marketing digitale offerta da Salesforce. Fornisce alle aziende una suite completa di strumenti per gestire e automatizzare varie attività di marketing su più canali. Cortex Framework funge da motore di analisi dei dati e di AI che ti aiuta a comprendere i risultati, identificare le aree di miglioramento e ottimizzare la tua strategia di marketing per ottenere risultati migliori.

Il seguente diagramma descrive come i dati SFMC sono disponibili tramite il workload di marketing di Cortex Framework Data Foundation:

Origine dati SFMC

Figura 1. Origine dati SFMC.

File di configurazione

Il file config.json configura le impostazioni richieste per la connessione alle origini dati per il trasferimento dei dati da vari workload. Questo file contiene i seguenti parametri per SFMC:

   "marketing": {
        "deploySFMC": true,
        "SFMC": {
            "deployCDC": true,
            "fileTransferBucket": "",
            "datasets": {
                "cdc": "",
                "raw": "",
                "reporting": "REPORTING_SFMC"
            }
        }
    }

La seguente tabella descrive il valore di ogni parametro di marketing:

Parametro Significato Valore predefinito Descrizione
marketing.deploySFMC Esegui il deployment di SFMC true Esegui il deployment per l'origine dati SFMC.
marketing.SFMC.deployCDC Esegui il deployment degli script CDC per SFMC true Genera script di elaborazione CDC di Salesforce Marketing Cloud (SFMC) da eseguire come DAG in Managed Airflow.
marketing.SFMC.fileTransferBucket Bucket con file di estrazione dei dati - Bucket in cui sono archiviati i file di estrazione dei dati di Automation Studio di Salesforce Marketing Cloud (SFMC) .
marketing.SFMC.datasets.cdc Set di dati CDC per SFMC Set di dati CDC per Salesforce Marketing Cloud (SFMC).
marketing.SFMC.datasets.raw Set di dati non elaborati per SFMC Set di dati non elaborati per Salesforce Marketing Cloud (SFMC).
marketing.SFMC.datasets.reporting Set di dati dei report per SFMC "REPORTING_SFMC" Set di dati dei report per Salesforce Marketing Cloud (SFMC).

Modello dati

Questa sezione descrive il modello dati di Salesforce Marketing Cloud (SFMC) utilizzando il diagramma entità-relazione (ERD).

Diagramma delle relazioni tra entità per SFMC

Figura 2. Salesforce Marketing Cloud (SFMC): diagramma entità-relazione.

Viste di base

Questi sono gli oggetti blu nell'ERD e sono viste sulle tabelle CDC senza trasformazioni, ad eccezione di alcuni alias dei nomi delle colonne. Consulta gli script in src/marketing/src/SFMC/src/reporting/ddls.

Viste report

Questi sono gli oggetti verdi nell'ERD e sono viste dei report che contengono metriche aggregate. Consulta gli script in src/marketing/src/SFMC/src/reporting/ddls.

Estrazione dei dati utilizzando Automation Studio

SFMC Automation Studio consente ai consumatori di SFMC di esportare i dati SFMC in vari sistemi di archiviazione. Cortex Framework Data Foundation cerca un insieme di file creati con Automation Studio in un bucket Cloud Storage. In questo processo devi utilizzare anche SFMC Email Studio.

Per configurare i processi di estrazione ed esportazione dei dati:

  1. Configura un bucket Cloud Storage. Questo bucket archivia i file esportati da SFMC. Assegna al bucket il nome del parametro di configurazione marketing.SFMC.fileTransferBucket. Consulta le istruzioni nella documentazione di Salesforce.
  2. Crea estensioni dati. Per ogni entità di cui vuoi estrarre i dati, crea un'estensione dati in Email Studio. Questa operazione è necessaria per identificare le origini dati dal database interno di SFMC.

    • Elenca tutti i campi definiti in src/SFMC/config/table_schema per l'entità. Se devi personalizzare questa impostazione per estrarre più o meno campi, assicurati che l'elenco dei campi sia allineato in questi passaggi e nei file dello schema della tabella. Ad esempio:
      Entity: unsubscribe
      Fields:
      AccountID
      OYBAccountID
      JobID
      ListID
      BatchID
      SubscriberID
      SubscriberKey
      EventDate
      IsUnique
      Domain
    
  3. Crea attività di query SQL. Per ogni entità, crea un' attività di query SQL. Questa attività è collegata all'estensione dati corrispondente creata in precedenza. Consulta la documentazione di Salesforce per questo passaggio:

    1. Definisci la query SQL con tutti i campi pertinenti. La query deve selezionare tutti i campi pertinenti all'entità definita nell'estensione dati nel passaggio precedente.
    2. Seleziona l'estensione dati corretta come target.
    3. Seleziona Sovrascrivi come azione sui dati.
    4. Consulta la seguente query di esempio:
      SELECT
        AccountID,
        OYBAccountID,
        JobID,
        ListID,
        BatchID,
        SubscriberID,
        SubscriberKey,
        EventDate,
        IsUnique,
        Domain
      FROM
        _Unsubscribe
    
  4. Crea attività di estrazione dei dati. Consulta la documentazione di Salesforce per la creazione di un'attività di estrazione dei dati per ogni entità. Questa attività recupera i dati dall'estensione dati di Salesforce e li estrae in un file CSV. Per questo passaggio:

    1. Utilizza il pattern di denominazione corretto. Deve corrispondere al pattern definito nelle impostazioni. Ad esempio, per l'entità Unsubscribe, il nome del file può essere simile a unsubscribe_%%Year%%_%%Month%%_%%Day%% %%Hour%%.csv.
    2. Imposta Tipo di estrazione su Data Extension Extract.
    3. Seleziona le opzioni Has column Headers (Ha intestazioni di colonna) e Text Qualified (Testo qualificato).
  5. Crea attività di conversione dei file per convertire il formato da UTF-16 a UTF-8. Per impostazione predefinita, Salesforce esporta i file CSV in formato UTF-16. In questo passaggio, convertili in formato UTF-8. Per ogni entità, crea un'altra attività di estrazione dei dati, per la conversione dei file. Per questo passaggio:

    • Utilizza lo stesso pattern di nome file utilizzato nel passaggio precedente dell'attività di estrazione dei dati.
    • Imposta Tipo di estrazione su File Convert.
    • Seleziona UTF8 dal menu a discesa in Convert To.
  6. Crea attività di trasferimento dei file. Crea un'attività di trasferimento dei file per ogni entità. Queste attività spostano i file CSV estratti da Salesforce Safehouse ai bucket Cloud Storage. Per questo passaggio:

    • Utilizza lo stesso pattern di nome file utilizzato nei passaggi precedenti.
    • Seleziona come destinazione un bucket Cloud Storage configurato in precedenza nel processo.
  7. Pianifica l'esecuzione. Una volta completate tutte le attività, configura le pianificazioni automatiche per eseguirle.

Aggiornamento e ritardo dei dati

In generale, l'aggiornamento dei dati per le origini dati di Cortex Framework è limitato da ciò che consente la connessione upstream, nonché dalla frequenza di esecuzione del DAG. Modifica la frequenza di esecuzione del DAG in modo che sia in linea con la frequenza upstream, i vincoli delle risorse e le esigenze aziendali.

Con SFMC Automation Studio, il ritardo di aggiornamento dei dati dipende dal ritardo di pianificazione quando è configurata l'esportazione dei dati.

Autorizzazioni di connessione di Managed Service for Apache Airflow

Crea le seguenti connessioni in Managed Airflow. Per maggiori dettagli, consulta la documentazione Gestire le connessioni Airflow.

Nome connessione Scopo
sfmc_raw_dataflow Per i file estratti da SFMC > set di dati BigQueryRaw.
sfmc_cdc_bq Per il trasferimento dal set di dati non elaborati al set di dati CDC.
sfmc_reporting_bq Per il trasferimento dal set di dati CDC al set di dati dei report.

Autorizzazioni del account di servizio di Managed Airflow

Il account di servizio utilizzato in Managed Airflow (come configurato nella connessione sfmc_raw_dataflow) richiede le autorizzazioni correlate a Dataflow. Consulta le istruzioni nella documentazione di Dataflow.

Impostazioni di importazione

Controlla le pipeline di dati Source to Raw e Raw to CDC tramite le impostazioni nel file src/SFMC/config/ingestion_settings.yaml . Questa sezione descrive i parametri di ogni pipeline di dati.

Tabelle di origine non elaborate

Questa sezione contiene voci che controllano la modalità di utilizzo dei file estratti da Automation Studio. Ogni voce corrisponde a un'entità SFMC. In base a questa configurazione, Cortex Framework crea DAG Airflow che eseguono pipeline Dataflow per caricare i dati dai file esportati nelle tabelle BigQuery nel set di dati non elaborati.

La directory src/SFMC/config/table_schema contiene un file di schema per ogni entità estratta da SFMC. Ogni file spiega come leggere i file CSV estratti da Automaton Studio per caricarli correttamente nel set di dati BigQueryraw.

Ogni file di schema contiene tre colonne:

  • SourceField: nome del campo del file CSV.
  • TargetField: nome della colonna nella tabella non elaborata per questa entità.
  • DataType: tipo di dati di ogni campo della tabella non elaborata.

I seguenti parametri controllano le impostazioni per Source to Raw per ogni voce:

Parametro Descrizione
base_table Nome della tabella non elaborata in cui vengono caricati i dati estratti di un'entità SFMC.
load_frequency Con quale frequenza viene eseguito un DAG per questa entità per caricare i dati dai file estratti. Per ulteriori informazioni sui valori possibili, consulta la documentazione di Airflow.
file_pattern Pattern per il file di questa tabella esportato da Automation Studio nel bucket Cloud Storage. Modifica questa impostazione solo se hai scelto un nome diverso da quelli suggeriti per i file estratti.
partition_details Come viene partizionata la tabella non elaborata per motivi di prestazioni. Per ulteriori informazioni, consulta Partizionamento delle tabelle.
cluster_details Facoltativo: se vuoi che la tabella non elaborata sia raggruppata per motivi di prestazioni. Per ulteriori informazioni, consulta Impostazioni del cluster.

Tabelle non elaborate in tabelle CDC

Questa sezione descrive quali voci controllano lo spostamento dei dati dalle tabelle non elaborate alle tabelle CDC. Ogni voce corrisponde a una tabella non elaborata.

I seguenti parametri controllano le impostazioni per Raw to CDC per ogni voce:

Parametro Descrizione
base_table Tabella nel set di dati CDC in cui vengono archiviati i dati non elaborati dopo la trasformazione CDC.
load_frequency Con quale frequenza viene eseguito un DAG per questa entità per popolare la tabella CDC. Per ulteriori informazioni sui valori possibili, consulta la documentazione di Airflow.
raw_table Tabella di origine dal set di dati non elaborati.
row_identifiers Colonne (separate da virgole) che formano un record univoco per questa tabella.
partition_details Come viene partizionata la tabella CDC per motivi di prestazioni. Per ulteriori informazioni, consulta Partizionamento delle tabelle.
cluster_details Facoltativo: se vuoi che questa tabella sia raggruppata per motivi di prestazioni. Per ulteriori informazioni, consulta Impostazioni del cluster.

Impostazioni report

Puoi configurare e controllare la modalità di generazione dei dati da parte di Cortex Framework per il livello di report finale di SFMC utilizzando il file delle impostazioni dei report (src/SFMC/config/reporting_settings.yaml). Questo file controlla la modalità di generazione degli oggetti BigQuery del livello di report (tabelle, viste,funzioni o stored procedure). Per ulteriori informazioni, consulta Personalizzare il file delle impostazioni dei report.

Passaggi successivi