Halaman ini menjelaskan cara memuat data dari sObjects Salesforce ke Google Cloud dengan Cloud Data Fusion. Plugin sumber batch Salesforce membaca sObject dari Salesforce. sObjects adalah tabel Salesforce yang datanya ingin Anda ambil. Beberapa contoh sObject mencakup peluang, kontak, akun, prospek, dan objek kustom.
Plugin sumber batch Salesforce mendukung pembacaan data dengan kueri Salesforce Object Query Language (SOQL) dan filter tanggal inkremental atau rentang.
Sebelum memulai
- Sumber batch Salesforce Cloud Data Fusion menggunakan Salesforce Bulk API V1.
- Siapkan Salesforce sebelum men-deploy dan menggunakan plugin Salesforce Cloud Data Fusion. Untuk informasi selengkapnya, lihat Membuat aplikasi terhubung Salesforce untuk Cloud Data Fusion.
Mengonfigurasi plugin
- Buka antarmuka web Cloud Data Fusion dan klik Studio.
- Pastikan Data Pipeline - Batch dipilih (bukan Real-Time).
- Di menu Sumber, klik Salesforce. Node Salesforce akan muncul di pipeline Anda. Jika Anda tidak melihat sumber Salesforce di halaman Studio, deploy plugin Salesforce dari Cloud Data Fusion Hub.
- Untuk mengonfigurasi sumber, buka node Salesforce, lalu klik Properti.
Masukkan properti berikut. Untuk mengetahui daftar lengkapnya, lihat Properti.
- Masukkan Label untuk node Salesforce—misalnya,
Salesforce tables
. - Masukkan Nama referensi untuk sumber Salesforce untuk
lineage—misalnya,
Salesforce tables
. Masukkan detail koneksi. Anda dapat menyiapkan koneksi baru satu kali, atau koneksi yang sudah ada dan dapat digunakan kembali.
Koneksi baru
Untuk menambahkan koneksi satu kali ke Salesforce, ikuti langkah-langkah berikut:
- Tetap nonaktifkan Gunakan koneksi.
Di bagian Connection, masukkan informasi berikut dari akun Salesforce di kolom ini:
- Username
- Password
- Token keamanan
- Kunci pengguna
- Rahasia konsumen
Untuk mendapatkan kredensial dari Salesforce, lihat Mendapatkan properti dari Salesforce.
Koneksi yang dapat digunakan kembali
Untuk menggunakan kembali koneksi yang ada, ikuti langkah-langkah berikut:
- Aktifkan Gunakan koneksi.
- Klik Jelajahi koneksi.
Klik nama koneksi.
Opsional: Jika koneksi tidak ada dan Anda ingin membuat koneksi baru yang dapat digunakan kembali, klik Tambahkan koneksi dan lihat langkah-langkah di tab Koneksi baru.
Masukkan SObject name untuk memuat semua kolom dari objek.
Opsional: Jika memilih nama sObject, Anda dapat memfilter data dengan kolom berikut:
- Last modified after: Hanya sertakan data yang terakhir kali diubah setelah waktu tertentu.
- Last modified before: Hanya sertakan data yang terakhir diubah sebelum waktu tertentu.
- Durasi: Hanya sertakan data yang terakhir diubah dalam periode waktu dengan ukuran yang ditentukan.
- Offset: Hanya sertakan data dengan Tanggal terakhir diubah kurang dari waktu mulai logis pipeline, dikurangi offset yang diberikan.
Opsional: Untuk sObjects yang didukung, aktifkan Enable PK chunking guna meningkatkan performa pipeline. Untuk informasi selengkapnya, lihat Meningkatkan performa dengan chunking PK.
Opsional: Daripada menentukan Nama sObject, Anda dapat memasukkan kueri SOQL, seperti
SELECT LastName from Contact
. Untuk mengetahui informasi selengkapnya, lihat Kueri SOQL untuk sumber Salesforce.Untuk menguji konektivitas, klik Dapatkan skema. Cloud Data Fusion terhubung ke Salesforce dan mengambil skema untuk tabel yang tercantum (secara teknis, sObject).
- Masukkan Label untuk node Salesforce—misalnya,
Properti
Properti | Makro diaktifkan | Properti wajib | Deskripsi |
---|---|---|---|
Nama referensi | Tidak | Ya | Digunakan untuk mengidentifikasi sumber ini secara unik untuk tugas, seperti garis keturunan, menganotasi metadata. |
Menggunakan koneksi | Tidak | Tidak | Gunakan koneksi yang ada. Jika koneksi digunakan, Anda tidak perlu menyediakan kredensial. |
Menjelajahi koneksi | Ya | Tidak | Nama koneksi yang akan digunakan. |
Nama pengguna | Ya | Ya | Nama pengguna Salesforce. |
Sandi | Ya | Ya | Sandi Salesforce. |
Token keamanan | Ya | Tidak | Token keamanan Salesforce. Jika sandi tidak berisi token keamanan, Cloud Data Fusion akan menambahkan token sebelum mengautentikasi dengan Salesforce. |
Kunci konsumen | Ya | Ya | Kunci Pengguna Aplikasi. ID ini juga disebut client ID OAuth. Untuk mendapatkan kunci konsumen, buat aplikasi terhubung Salesforce. |
Rahasia konsumen | Ya | Ya | Rahasia Konsumen Aplikasi. Ini juga disebut rahasia klien OAuth. Untuk mendapatkan secret klien, buat aplikasi terhubung Salesforce. |
URL Login | Ya | Ya | URL login OAuth2 Salesforce. Defaultnya adalah https://login.salesforce.com/services/oauth2/token |
Waktu tunggu koneksi habis | Ya | Tidak | Waktu maksimum, dalam milidetik, untuk menunggu inisialisasi koneksi
sebelum waktu tunggu habis. Default-nya adalah 30.000 milidetik. |
URL proxy | Ya | Tidak | URL proxy, yang berisi protokol, alamat, dan port. |
SOQL | Ya | Tidak | Kueri SOQL untuk mengambil data ke sumber. Contoh:
|
Nama SObject | Ya | Tidak | Nama objek Salesforce yang akan dibaca. Jika nilai diberikan, konektor akan mendapatkan
semua kolom untuk objek ini dari Salesforce dan menghasilkan kueri SOQL, seperti
select FIELD_1, FIELD_2 from
${sObjectName} . Diabaikan jika kueri SOQL diberikan.Ada juga sObjects yang tidak didukung di Salesforce Bulk API. Membuat tugas dengan objek yang tidak didukung akan menyebabkan error berikut: Entity is not supported by the Bulk
API . Objek ini juga tidak didukung oleh Einstein Analytics, yang menggunakan Bulk API untuk membuat kueri data.Kasus saat BULK API tidak digunakan: Jika panjang kueri mengirim kueri ke Salesforce untuk menerima array informasi batch, Bulk API tidak digunakan dalam satu kasus. Jika kueri berada dalam batas, kueri tersebut akan mengeksekusi kueri asli. Jika tidak, logika akan beralih ke logika objek lebar. Misalnya, kode ini menghasilkan kueri ID yang hanya mengambil informasi batch untuk ID yang akan digunakan nanti untuk mengambil data melalui SOAP API. |
Terakhir diubah setelah | Ya | Tidak | Filter data agar hanya menyertakan data dengan kolom sistem,
LastModifiedDate , yang lebih besar dari atau sama dengan tanggal
yang ditentukan. Gunakan format tanggal Salesforce (lihat
contoh). Jika tidak ada nilai yang diberikan,
tanggal batas bawah tidak akan diterapkan. |
Terakhir diubah sebelum | Ya | Tidak | Filter data untuk hanya menyertakan data dengan kolom sistem,
LastModifiedDate , yang kurang dari tanggal yang ditentukan. Gunakan
format tanggal Salesforce
(lihat contoh). Dengan menentukan nilai ini
menggunakan properti Last modified after, Anda dapat membaca data
yang diubah dalam jangka waktu tertentu. Jika tidak ada nilai yang diberikan, tanggal batas atas tidak akan diterapkan. |
Durasi | Ya | Tidak | Memfilter data agar hanya membaca data yang terakhir diubah dalam
jangka waktu dengan ukuran yang ditentukan. Misalnya, jika durasinya adalah 6 hours dan pipeline berjalan pada pukul 09.00, pipeline akan membaca data yang terakhir diperbarui dari pukul 03.00 (inklusif) hingga pukul 09.00 (eksklusif).
Tentukan durasi dengan angka dan satuan waktu berikut:
2 days, 1 hours, 30 minutes . Jika nilai sudah ditentukan untuk Terakhir diubah setelah atau Terakhir diubah sebelum, durasi akan diabaikan. |
Offset | Ya | Tidak | Filter data untuk hanya membaca data jika kolom sistem,
LastModifiedDate , kurang dari waktu mulai logis
pipeline, dikurangi offset yang diberikan. Misalnya, jika durasi adalah
6 hours , offset adalah 1 hours , dan pipeline
berjalan pada pukul 09.00, data yang terakhir diubah antara pukul 02.00
(inklusif) dan 08.00 (eksklusif) akan dibaca.Tentukan durasi menggunakan angka dan satuan waktu berikut:
2 days, 1 hours, 30 minutes . Jika nilai sudah ditentukan untuk Terakhir diubah setelah atau Terakhir diubah sebelum, offset akan diabaikan. |
Jenis operasi SOQL | Tidak | Tidak | Tentukan operasi kueri yang akan dijalankan pada tabel. Jika kueri dipilih,
hanya data saat ini yang ditampilkan. Memilih queryAll
akan menampilkan semua data saat ini dan yang dihapus.Operasi default adalah query . |
Mengaktifkan pengelompokan PK | Ya | Tidak | Pembagian kunci utama (PK) membagi kueri pada tabel besar menjadi beberapa bagian, atau
potongan, berdasarkan ID kumpulan data, atau kunci utama, dari kumpulan data yang dikueri. Salesforce merekomendasikan agar Anda mengaktifkan pengelompokan PK saat membuat kueri tabel dengan lebih dari 10 juta data, atau saat kueri massal terus-menerus habis waktunya. Untuk informasi selengkapnya, lihat Pembagian PK. Pembagian PK hanya berfungsi dengan kueri yang tidak menyertakan klausa SELECT , atau kondisi selain WHERE .
Pembagian menjadi beberapa bagian didukung untuk objek kustom dan tabel Berbagi dan Histori apa pun
yang mendukung objek standar. |
Ukuran bagian | Ya | Tidak | Tentukan ukuran potongan. Ukuran maksimum adalah 250.000. Ukuran defaultnya adalah 100.000. |
Nama induk SObject | Ya | Tidak | Induk Objek Salesforce. Ini digunakan untuk mengaktifkan pengelompokan untuk tabel histori atau objek bersama. |
Contoh format tanggal Salesforce
Sintaksis format | Contoh |
---|---|
YYYY-MM-DDThh:mm:ss+hh:mm |
1999-01-01T23:01:01+01:00 |
YYYY-MM-DDThh:mm:ss-hh:mm |
1999-01-01T23:01:01-08:00 |
YYYY-MM-DDThh:mm:ssZ |
1999-01-01T23:01:01Z |
Pemetaan jenis data
Tabel berikut adalah daftar jenis data Salesforce dengan jenis CDAP yang sesuai.
Jenis data Salesforce | Jenis data skema CDAP |
---|---|
_bool |
boolean |
_int |
int |
_long |
long |
_double , currency , percent ,
geolocation (lintang), geolocation
(bujur) |
double |
date |
date |
datetime |
timestamp (mikrodetik) |
time |
time (mikrodetik) |
picklist |
string |
multipicklist |
string |
combobox |
string |
reference |
string |
base64 |
string |
textarea |
string |
phone |
string |
id |
string |
url |
string |
email |
string |
encryptedstring |
string |
datacategorygroupreference |
string |
location |
string |
address |
string |
anyType |
string |
json |
string |
complexvalue |
string |
Kasus penggunaan
Lihat kasus penggunaan berikut untuk sumber batch Salesforce:
Praktik terbaik
Untuk mengetahui informasi selengkapnya tentang cara meningkatkan performa di sumber batch Salesforce, lihat praktik terbaik.
Catatan rilis
Langkah selanjutnya
- Pelajari tutorial plugin Salesforce.