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. Layanan ini menyediakan serangkaian alat komprehensif bagi bisnis untuk mengelola dan mengotomatiskan berbagai aktivitas pemasaran di beberapa saluran. Cortex Framework berfungsi sebagai analisis data dan mesin 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 Cloud Composer.
marketing.SFMC.fileTransferBucket Bucket dengan file Ekstrak Data - Bucket tempat file Ekstrak 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 Entitas untuk SFMC

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

Tampilan dasar

Ini adalah objek biru di 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 di 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 kumpulan file yang dibuat dengan Automation Studio di bucket Cloud Storage. Anda juga perlu menggunakan SFMC Email Studio dalam proses ini.

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

  1. Siapkan bucket Cloud Storage. Bucket ini menyimpan file yang diekspor dari SFMC. Beri nama parameter konfigurasi marketing.SFMC.fileTransferBucket 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.

    • Cantumkan 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 disejajarkan 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 harus memilih semua kolom yang relevan dengan entity 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. Membuat aktivitas ekstrak data. Lihat dokumentasi Salesforce untuk membuat Aktivitas Ekstrak 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 di setelan. Misalnya, untuk entity Unsubscribe, nama file dapat berupa unsubscribe_%%Year%%_%%Month%%_%%Day%% %%Hour%%.csv.
    2. Tetapkan Extract Type ke Data Extension Extract.
    3. Pilih opsi Memiliki Header kolom dan Teks Memenuhi Syarat.
  5. Buat aktivitas konversi file untuk mengonversi format dari UTF-16 menjadi UTF-8. Secara default, Salesforce mengekspor file CSV dalam UTF-16. Pada langkah ini, Anda akan mengonversinya ke format UTF-8. Untuk setiap entity, buat Aktivitas Ekstrak Data lain, untuk konversi file. Untuk langkah ini:

    • Gunakan pola nama file yang sama dengan yang digunakan di langkah sebelumnya Aktivitas Ekstraksi Data.
    • Tetapkan Extract Type ke File Convert
    • Pilih UTF8 dari 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 di langkah sebelumnya.
    • Pilih bucket Cloud Storage yang 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 apa yang diizinkan oleh koneksi upstream, serta frekuensi eksekusi DAG Anda. Sesuaikan frekuensi eksekusi DAG agar selaras dengan frekuensi upstream, batasan resource, dan kebutuhan bisnis Anda.

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

Izin koneksi Cloud Composer

Buat koneksi berikut di Cloud Composer. Lihat detail selengkapnya di dokumentasi Mengelola koneksi Airflow.

Nama Koneksi Tujuan
sfmc_raw_dataflow Untuk file yang diekstrak SFMC > set data BigQueryRaw.
sfmc_cdc_bq Untuk Set data mentah > Transfer set data CDC.
sfmc_reporting_bq Untuk set data CDC > Transfer set data pelaporan.

Izin akun layanan Cloud Composer

Akun layanan yang digunakan di Cloud Composer (seperti yang dikonfigurasi dalam koneksi sfmc_raw_dataflow) memerlukan izin terkait Dataflow. Lihat petunjuk di dokumentasi Dataflow

Setelan proses transfer

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, Framework Cortex membuat DAG Airflow yang menjalankan pipeline Dataflow untuk memuat data dari file yang diekspor ke dalam tabel BigQuery dalam set data mentah.

Direktori src/SFMC/config/table_schema berisi file skema untuk setiap entity yang diekstrak dari SFMC. Setiap file menjelaskan cara membaca file csv yang diekstrak dari Automaton Studio agar berhasil memuat file tersebut 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 entity SFMC dimuat.
load_frequency Seberapa sering DAG untuk entity ini berjalan untuk memuat data dari file yang diekstrak. Untuk mengetahui informasi selengkapnya tentang kemungkinan nilai, lihat dokumentasi Airflow.
file_pattern Pola untuk file tabel ini yang diekspor dari Automation Studio ke bucket Cloud Storage. Ubah ini hanya jika Anda memilih nama yang berbeda dengan 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 informasi selengkapnya, lihat Setelan Cluster.

Tabel mentah ke CDC

Bagian ini menjelaskan entri 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 entity ini berjalan 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 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 informasi selengkapnya, lihat Setelan Cluster.

Setelan pelaporan

Anda dapat mengonfigurasi dan mengontrol cara Cortex Framework menghasilkan 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) dihasilkan. Untuk mengetahui informasi selengkapnya, lihat Menyesuaikan file setelan pelaporan.

Apa langkah selanjutnya?