Integrasi dengan Salesforce Marketing Cloud

Halaman ini menjelaskan konfigurasi yang diperlukan untuk mengambil data dari Salesforce Marketing Cloud (SFMC) sebagai sumber data workload pemasaran Cortex Framework Data Foundation.

SFMC adalah platform otomatisasi pemasaran digital yang ditawarkan oleh Salesforce. Solusi ini menyediakan serangkaian alat yang komprehensif bagi bisnis untuk mengelola dan mengotomatiskan berbagai aktivitas pemasaran di beberapa saluran. Cortex Framework berfungsi sebagai mesin analisis data dan AI yang membantu Anda memahami hasil, mengidentifikasi area yang perlu ditingkatkan, dan mengoptimalkan strategi pemasaran untuk mendapatkan hasil yang lebih baik.

Diagram berikut menjelaskan cara data SFMC tersedia melalui beban kerja pemasaran Cortex Framework Data Foundation:

Sumber data SFMC

Gambar 1. Sumber data SFMC.

File konfigurasi

File config.json mengonfigurasi setelan yang diperlukan untuk terhubung ke sumber data guna mentransfer data dari berbagai beban kerja. File ini berisi parameter berikut untuk SFMC:

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

Tabel berikut menjelaskan nilai untuk setiap parameter pemasaran:

Parameter Arti Nilai Default Deskripsi
marketing.deploySFMC Men-deploy SFMC true Jalankan deployment untuk sumber data SFMC.
marketing.SFMC.deployCDC Men-deploy skrip CDC untuk SFMC true Buat skrip pemrosesan CDC Salesforce Marketing Cloud (SFMC) untuk dijalankan sebagai DAG di Managed Airflow.
marketing.SFMC.fileTransferBucket Bucket dengan file Ekstraksi Data - Bucket tempat file Ekstraksi Data Automation Studio Salesforce Marketing Cloud (SFMC) disimpan.
marketing.SFMC.datasets.cdc Set data CDC untuk SFMC Set data CDC untuk Salesforce Marketing Cloud (SFMC).
marketing.SFMC.datasets.raw Set data mentah untuk SFMC Set data mentah untuk Salesforce Marketing Cloud (SFMC).
marketing.SFMC.datasets.reporting Set data pelaporan untuk SFMC "REPORTING_SFMC" Set data pelaporan untuk Salesforce Marketing Cloud (SFMC).

Model Data

Bagian ini menjelaskan Model Data Salesforce Marketing Cloud (SFMC) menggunakan Diagram Hubungan Entitas (ERD).

Diagram Hubungan Entity untuk SFMC

Gambar 2. Salesforce Marketing Cloud (SFMC): Diagram Hubungan Entitas.

Tampilan dasar

Objek ini adalah objek biru dalam ERD dan merupakan tampilan pada tabel CDC tanpa transformasi selain beberapa alias nama kolom. Lihat skrip di src/marketing/src/SFMC/src/reporting/ddls.

Tampilan pelaporan

Ini adalah objek hijau dalam ERD dan merupakan tampilan pelaporan yang berisi metrik gabungan. Lihat skrip di src/marketing/src/SFMC/src/reporting/ddls.

Ekstraksi Data menggunakan Automation Studio

SFMC Automation Studio memungkinkan konsumen SFMC mengekspor data SFMC mereka ke berbagai sistem penyimpanan. Cortex Framework Data Foundation mencari sekumpulan file yang dibuat dengan Automation Studio di bucket Cloud Storage. Anda juga perlu menggunakan SFMC Email Studio dalam proses ini.

Untuk menyiapkan proses ekstraksi dan ekspor data, ikuti langkah-langkah berikut:

  1. Siapkan bucket Cloud Storage. Bucket ini menyimpan file yang diekspor dari SFMC. Beri nama parameter marketing.SFMC.fileTransferBucket config bucket. Lihat petunjuk di dokumentasi Salesforce.
  2. Buat ekstensi data. Untuk setiap entitas yang datanya ingin Anda ekstrak, buat Ekstensi Data di Email Studio. Hal ini diperlukan untuk mengidentifikasi sumber data dari database internal SFMC.

    • Mencantumkan semua kolom yang ditentukan dalam src/SFMC/config/table_schema untuk entity. Jika Anda perlu menyesuaikannya untuk mengekstrak lebih banyak atau lebih sedikit kolom, pastikan daftar kolom selaras dalam langkah-langkah ini serta dalam file skema tabel. Contoh:
      Entity: unsubscribe
      Fields:
      AccountID
      OYBAccountID
      JobID
      ListID
      BatchID
      SubscriberID
      SubscriberKey
      EventDate
      IsUnique
      Domain
    
  3. Buat aktivitas kueri SQL. Untuk setiap entitas, buat Aktivitas Kueri SQL. Aktivitas ini terhubung ke ekstensi data yang sesuai yang dibuat sebelumnya. Lihat dokumentasi Salesforce untuk langkah ini:

    1. Tentukan kueri SQL dengan semua kolom yang relevan. Kueri perlu memilih semua kolom yang relevan dengan entitas yang ditentukan dalam ekstensi data pada langkah sebelumnya.
    2. Pilih ekstensi data yang benar sebagai target.
    3. Pilih Timpa sebagai Tindakan Data.
    4. Lihat contoh kueri berikut:
      SELECT
        AccountID,
        OYBAccountID,
        JobID,
        ListID,
        BatchID,
        SubscriberID,
        SubscriberKey,
        EventDate,
        IsUnique,
        Domain
      FROM
        _Unsubscribe
    
  4. Buat aktivitas ekstraksi data. Lihat dokumentasi Salesforce untuk membuat Aktivitas Ekstraksi Data untuk setiap entity. Aktivitas ini mendapatkan data dari Ekstensi Data Salesforce dan mengekstraknya ke file CSV. Untuk langkah ini:

    1. Gunakan pola penamaan yang benar. Nilai ini harus cocok dengan pola yang ditentukan dalam settings. Misalnya, untuk entity Unsubscribe, nama filenya bisa seperti unsubscribe_%%Year%%_%%Month%%_%%Day%% %%Hour%%.csv.
    2. Tetapkan Jenis Ekstraksi ke Data Extension Extract.
    3. Pilih opsi Memiliki Header Kolom dan Teks yang Memenuhi Syarat.
  5. Buat aktivitas konversi file untuk mengonversi format dari UTF-16 ke UTF-8. Secara default, Salesforce mengekspor file CSV dalam UTF-16. Pada langkah ini, Anda mengonversinya ke format UTF-8. Untuk setiap entitas, buat Aktivitas Ekstraksi Data lain, untuk konversi file. Untuk langkah ini:

    • Gunakan pola nama file yang sama dengan yang digunakan pada langkah sebelumnya dalam Aktivitas Ekstraksi Data.
    • Tetapkan Jenis Ekstraksi ke File Convert
    • Pilih UTF8 dari menu drop-down di Convert To.
  6. Buat aktivitas transfer file. Buat Aktivitas Transfer File untuk setiap entitas. Aktivitas ini memindahkan file CSV yang diekstrak dari Salesforce Safehouse ke bucket Cloud Storage. Untuk langkah ini:

    • Gunakan pola nama file yang sama dengan yang digunakan pada langkah sebelumnya.
    • Pilih bucket Cloud Storage yang telah disiapkan sebelumnya dalam proses sebagai tujuan.
  7. Jadwalkan eksekusi. Setelah semua aktivitas selesai, siapkan jadwal otomatis untuk menjalankannya.

Keaktualan dan Penundaan Data

Sebagai aturan umum, keaktualan data untuk sumber data Cortex Framework dibatasi oleh koneksi upstream yang diizinkan, serta frekuensi eksekusi DAG Anda. Sesuaikan frekuensi eksekusi DAG agar selaras dengan frekuensi upstream, batasan resource, dan kebutuhan bisnis Anda.

Dengan SFMC Automation Studio, penundaan keaktualan data bergantung pada penundaan penjadwalan saat ekspor data disiapkan.

Izin koneksi Managed Service for Apache Airflow

Buat koneksi berikut di Managed Airflow. Lihat detail selengkapnya di Dokumentasi mengelola koneksi Airflow.

Nama Koneksi Tujuan
sfmc_raw_dataflow Untuk SFMC Extracted files > BigQueryRaw dataset.
sfmc_cdc_bq Untuk Transfer set data mentah > set data CDC.
sfmc_reporting_bq Untuk set data CDC > Transfer set data pelaporan.

Izin akun layanan Airflow yang dikelola

Akun layanan yang digunakan di Managed Airflow (seperti yang dikonfigurasi di koneksi sfmc_raw_dataflow) memerlukan izin terkait Dataflow. Lihat petunjuk di dokumentasi Dataflow

Setelan penyerapan

Kontrol pipeline data Source to Raw dan Raw to CDC melalui setelan dalam file src/SFMC/config/ingestion_settings.yaml . Bagian ini menjelaskan parameter setiap pipeline data.

Sumber ke tabel mentah

Bagian ini memiliki entri yang mengontrol cara penggunaan file yang diekstrak dari Automation Studio. Setiap entri sesuai dengan satu entitas SFMC. Berdasarkan konfigurasi ini, Cortex Framework membuat DAG Airflow yang menjalankan pipeline Dataflow untuk memuat data dari file yang diekspor ke tabel BigQuery di set data mentah.

Direktori src/SFMC/config/table_schema berisi file skema untuk setiap entitas yang diekstrak dari SFMC. Setiap file menjelaskan cara membaca file CSV yang diekstrak dari Automaton Studio agar berhasil dimuat ke dalam set data BigQueryraw.

Setiap file skema berisi tiga kolom:

  • SourceField: Nama kolom file CSV.
  • TargetField: Nama kolom dalam tabel mentah untuk entity ini.
  • DataType: Jenis data setiap kolom tabel mentah.

Parameter berikut mengontrol setelan untuk Source to Raw untuk setiap entri:

Parameter Deskripsi
base_table Nama tabel mentah tempat data yang diekstrak entitas SFMC dimuat.
load_frequency Seberapa sering DAG untuk entitas ini dijalankan untuk memuat data dari file yang diekstrak. Untuk mengetahui informasi selengkapnya tentang kemungkinan nilai, lihat dokumentasi Airflow.
file_pattern Pola file untuk tabel ini yang diekspor dari Automation Studio ke bucket Cloud Storage. Ubah ini hanya jika Anda memilih nama yang berbeda dari yang disarankan untuk file yang diekstrak.
partition_details Cara tabel mentah dipartisi untuk pertimbangan performa. Untuk mengetahui informasi selengkapnya, lihat Partisi Tabel.
cluster_details Opsional: Jika Anda ingin tabel mentah dikelompokkan untuk pertimbangan performa. Untuk mengetahui informasi selengkapnya, lihat Setelan Cluster.

Tabel mentah ke CDC

Bagian ini menjelaskan entri mana yang mengontrol cara data dipindahkan dari tabel mentah ke tabel CDC. Setiap entri sesuai dengan tabel mentah.

Parameter berikut mengontrol setelan untuk Raw to CDC untuk setiap entri:

Parameter Deskripsi
base_table Tabel dalam set data CDC tempat data mentah setelah transformasi CDC disimpan.
load_frequency Seberapa sering DAG untuk entitas ini dijalankan untuk mengisi tabel CDC. Untuk mengetahui informasi selengkapnya tentang kemungkinan nilai, lihat dokumentasi Airflow.
raw_table Tabel sumber dari set data mentah.
row_identifiers Kolom (dipisahkan dengan koma) yang membentuk data unik untuk tabel ini.
partition_details Cara tabel CDC dipartisi untuk pertimbangan performa. Untuk mengetahui informasi selengkapnya, lihat Partisi Tabel.
cluster_details Opsional: Jika Anda ingin tabel ini dikelompokkan untuk pertimbangan performa. Untuk mengetahui informasi selengkapnya, lihat Setelan Cluster.

Setelan pelaporan

Anda dapat mengonfigurasi dan mengontrol cara Cortex Framework membuat data untuk lapisan pelaporan akhir SFMC menggunakan file setelan pelaporan (src/SFMC/config/reporting_settings.yaml). File ini mengontrol cara objek BigQuery lapisan pelaporan (tabel, tampilan, fungsi, atau prosedur tersimpan) dibuat. Untuk mengetahui informasi selengkapnya, lihat Menyesuaikan file setelan pelaporan.

Apa langkah selanjutnya?