Datastream memungkinkan Anda mereplikasi data perubahan dari sumber langsung ke tabel BigQuery untuk analisis hampir real-time. Saat melakukan streaming data ke BigQuery, Anda dapat memilih mode tulis gabungan atau hanya-tambah dan menggunakan kolom datastream_metadata untuk melacak peristiwa perubahan. Anda juga dapat
menerapkan praktik terbaik pengelolaan biaya, seperti pemesanan slot dan penyesuaian
keusangan tabel, serta meninjau batasan umum.
Perilaku penulisan
Ukuran peristiwa maksimum saat Anda melakukan streaming data ke BigQuery adalah 20 MB.
Saat mengonfigurasi aliran data, Anda dapat memilih cara Datastream menulis data perubahan ke BigQuery. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi mode tulis.
Metadata tabel
Datastream menambahkan kolom STRUCT bernama datastream_metadata ke setiap tabel yang ditulis ke tujuan BigQuery.
Mode tulis penggabungan
Jika tabel memiliki kunci utama di sumber, kolom tersebut akan berisi kolom berikut:
UUID: Kolom ini memiliki jenis dataSTRING.SOURCE_TIMESTAMP: Kolom ini memiliki jenis dataINTEGER.
Jika tabel tidak memiliki kunci utama, kolom akan berisi kolom tambahan: IS_DELETED. Kolom ini memiliki jenis data BOOLEAN, dan menunjukkan apakah data yang di-streaming Datastream ke tujuan terkait dengan operasi DELETE di sumber. Tabel tanpa kunci utama bersifat hanya-tambah.
Mode tulis hanya-tambah
Kolom datastream_metadata berisi kolom yang sama untuk tabel dengan dan tanpa kunci utama:
UUID: Kolom ini memiliki jenis dataSTRING.SOURCE_TIMESTAMP: Kolom ini memiliki jenis dataINTEGER.CHANGE_SEQUENCE_NUMBER: Kolom ini memiliki jenis dataSTRING. Ini adalah nomor urut internal yang digunakan oleh Datastream untuk setiap peristiwa perubahan.CHANGE_TYPE: Kolom ini memiliki jenis dataSTRING. Kolom ini menunjukkan jenis peristiwa perubahan:INSERT,UPDATE-INSERT,UPDATE-DELETE, atauDELETE.SORT_KEYS: Kolom ini berisi array nilaiSTRING. Anda dapat menggunakan nilai untuk mengurutkan peristiwa perubahan.
Mengontrol biaya BigQuery
Biaya BigQuery ditagih secara terpisah dari Datastream. Untuk mempelajari cara mengontrol biaya BigQuery, lihat harga CDC BigQuery.
Praktik terbaik pengelolaan biaya
Saat menggunakan Datastream dengan BigQuery sebagai tujuan, pertimbangkan praktik terbaik pengelolaan biaya berikut:
- Memahami biaya BigQuery CDC: saat menggunakan Datastream dengan BigQuery sebagai tujuan, change data capture (CDC) melibatkan operasi penggabungan latar belakang. Secara default,
tugas latar belakang penyerapan BigQuery CDC yang dilakukan tanpa
penetapan pemesanan BigQuery
BACKGROUNDatauBACKGROUND_CHANGE_DATA_CAPTUREmenggunakan harga on-demand. - Gunakan pemesanan BigQuery: untuk mengelola dan membatasi biaya yang terkait dengan tugas penggabungan CDC, sebaiknya Anda membeli pemesanan slot BigQuery. Hal ini memberikan kapasitas tetap dengan harga tetap, sehingga biaya Anda lebih mudah diprediksi. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi pemesanan BigQuery untuk digunakan dengan penyerapan CDC.
- Sesuaikan
max_staleness: Parametermax_stalenessdi BigQuery adalah kompromi langsung antara keaktualan data dan biaya. Nilai yang lebih rendah berarti operasi penggabungan yang lebih sering dan biaya yang lebih tinggi, tetapi data yang lebih baru. Sesuaikan parameter ini ke tingkat yang memenuhi persyaratan bisnis Anda untuk keaktualan data tanpa melebihi anggaran. Untuk mengetahui informasi selengkapnya, lihat Mengelola keusangan tabel.
Batasan umum
Batasan umum untuk menggunakan BigQuery sebagai tujuan meliputi:
- Secara default, Datastream tidak mendukung penambahan kunci utama ke tabel yang sudah direplikasi ke BigQuery tanpa kunci utama, atau penghapusan kunci utama dari tabel yang direplikasi ke BigQuery dengan kunci utama. Jika Anda perlu melakukan perubahan tersebut, hubungi Dukungan Google. Untuk mengetahui informasi tentang cara mengubah definisi kunci utama untuk tabel sumber yang sudah memiliki kunci utama, lihat Mendiagnosis masalah.
Kunci utama di BigQuery harus memiliki jenis data berikut:
DATEBOOLGEOGRAPHYINT64NUMERICBIGNUMERICSTRINGTIMESTAMPDATETIME
Tabel yang berisi kunci utama dari jenis data yang tidak didukung tidak akan direplikasi oleh Datastream.
BigQuery tidak mendukung nama tabel dengan karakter
.,$,/,@, atau+. Datastream mengganti karakter tersebut dengan garis bawah saat membuat tabel tujuan.Misalnya,
table.namedi database sumber menjaditable_namedi BigQuery.Untuk mengetahui informasi selengkapnya tentang nama tabel di BigQuery, lihat Penamaan tabel.
BigQuery tidak mendukung lebih dari empat kolom pengelompokan. Saat mereplikasi tabel dengan lebih dari empat kolom kunci utama, Datastream menggunakan empat kolom kunci utama sebagai kolom pengelompokan.
Datastream memetakan literal tanggal dan waktu di luar rentang seperti jenis tanggal infinity PostgreSQL ke nilai berikut:
DATEpositif ke nilai9999-12-31DATEnegatif ke nilai0001-01-01TIMESTAMPpositif ke nilai9999-12-31 23:59:59.999000 UTCTIMESTAMPnegatif ke nilai0001-01-01 00:00:00 UTC
BigQuery tidak mendukung tabel streaming yang memiliki kunci utama dengan jenis data
FLOATatauREAL. Tabel tersebut tidak direplikasi. Untuk mempelajari lebih lanjut jenis dan rentang tanggal BigQuery, lihat Jenis data.Jika sumber Anda adalah Salesforce atau Salesforce Marketing Cloud (Pratinjau), opsi konfigurasi Dataset for each schema tidak didukung.