DataWorks Data Integration mendukung sinkronisasi data di lingkungan jaringan yang kompleks. Tersedia dua mode sinkronisasi: batch synchronization untuk transfer data offline secara periodik dan real-time synchronization untuk replikasi inkremental berkelanjutan. Keduanya dapat dikonfigurasi pada halaman DataStudio.
Pilih mode sinkronisasi
Kedua mode tersebut berbeda dalam frekuensi transfer dan volume data per eksekusi.
| Batch synchronization | Real-time synchronization | |
|---|---|---|
| Frekuensi transfer | Terjadwal (periodik) | Berkesinambungan |
| Data yang ditransfer | Snapshot penuh atau inkremental | Hanya perubahan inkremental |
| Kasus penggunaan umum | Pelaporan periodik, data warehousing | Pipeline dengan latensi rendah |
| Topologi sumber | Satu tabel ke satu tabel; tabel di database terpartisi (sharded) ke satu tabel | Tautan multi-sumber berbentuk bintang (star-shaped) |
| Konfigurasi | Antarmuka tanpa kode atau editor kode | Konfigurasi input/output |
Gunakan batch synchronization jika:
Beban kerja downstream dapat mentolerir penundaan (misalnya, pembaruan harian atau per jam).
Anda perlu melakukan pengisian ulang data historis ke partisi tertentu.
Sumber data Anda termasuk dalam lebih dari 40 jenis sumber data yang didukung, termasuk database relasional, sistem penyimpanan tidak terstruktur, sistem penyimpanan big data, dan antrian pesan (message queues).
Gunakan real-time synchronization jika:
Data harus tiba di tujuan dalam hitungan detik setelah terjadi perubahan di sumber.
Anda ingin mereplikasi seluruh database secara berkelanjutan ke tujuan.
Batch synchronization tidak ideal jika:
Anda memerlukan kesegaran data dalam hitungan kurang dari satu menit.
Sumber data Anda tidak mendukung salah satu dari 40+ jenis sumber data yang kompatibel.
Untuk solusi sinkronisasi tambahan—termasuk sinkronisasi gabungan penuh dan inkremental serta sinkronisasi batch seluruh database—lihat Jenis sumber data yang didukung dan solusi sinkronisasi data.
Prasyarat
Sebelum memulai, pastikan Anda telah memiliki:
Peran Development di ruang kerja DataWorks Anda.
Untuk menambahkan pengguna RAM (Resource Access Management) dan menetapkan peran, lihat Menambahkan pengguna RAM ke ruang kerja sebagai anggota dan menetapkan peran kepada anggota tersebut.
Batch synchronization
Cara kerja
Batch synchronization membaca data dari sumber menggunakan Reader plug-in dan menulisnya ke tujuan menggunakan Writer plug-in. Sebelum membuat node sinkronisasi batch, tambahkan sumber data ke DataWorks agar tersedia saat konfigurasi node.
Setiap eksekusi mentransfer data penuh atau data inkremental ke partisi tertentu di tabel tujuan. Gunakan parameter penjadwalan bawaan $bizdate — yang secara default ditetapkan ke variabel bawaan ${bizdate} — untuk menargetkan partisi yang tepat pada setiap eksekusi terjadwal. Anda juga dapat menggunakan fitur pengisian ulang data di Operation Center untuk menyinkronkan data historis ke tabel atau partisi tertentu berdasarkan konfigurasi node sinkronisasi batch.
Konfigurasi node sinkronisasi batch
Pilih metode konfigurasi berdasarkan sumber data dan kebutuhan Anda:
| Skenario | Metode | Referensi |
|---|---|---|
| Sumber data telah ditambahkan ke DataWorks dan mendukung antarmuka tanpa kode | Antarmuka tanpa kode | Mengonfigurasi node sinkronisasi batch menggunakan antarmuka tanpa kode (2.0) |
| Sumber data tidak dapat ditambahkan ke DataWorks | Editor kode | Mengonfigurasi node sinkronisasi batch menggunakan editor kode (2.0) |
| Sumber data tidak mendukung antarmuka tanpa kode | Editor kode | Mengonfigurasi node sinkronisasi batch menggunakan editor kode (2.0) |
| Parameter Reader atau Writer plug-in hanya dapat diatur dalam mode skrip | Editor kode | Mengonfigurasi node sinkronisasi batch menggunakan editor kode (2.0) |
Untuk daftar lengkap sumber data, Reader plug-in, dan Writer plug-in yang didukung, lihat Jenis sumber data yang didukung, Reader plug-in, dan Writer plug-in dan Ikhtisar fitur batch synchronization.
Real-time synchronization
Real-time synchronization menggunakan tautan sinkronisasi berbentuk bintang (star-shaped) yang menggabungkan berbagai jenis sumber data. Konfigurasikan input dan output node sinkronisasi real-time untuk menyinkronkan dari satu tabel ke tabel lain, atau untuk mereplikasi seluruh data dari database ke tujuan.
Untuk jenis sumber data yang didukung dan detail penyiapan, lihat Jenis sumber data yang mendukung real-time synchronization dan Ikhtisar fitur real-time synchronization.
Konfigurasi dependensi penjadwalan
Dependensi penjadwalan mengontrol kapan suatu node dijalankan relatif terhadap node lain di ruang kerja.
Node batch synchronization
Node leluhur: Tetapkan root node ruang kerja atau zero load node sebagai leluhur. Hal ini memicu eksekusi node batch synchronization dalam siklus penjadwalan ruang kerja.
Node keturunan: Agar DataWorks secara otomatis mengurai dependensi antara node batch synchronization dan node SQL downstream, konfigurasikan output node batch synchronization dalam format
Nama proyek.Nama tabel.
Node real-time synchronization
Node real-time synchronization berjalan secara berkelanjutan dan tidak menghasilkan output seperti node yang dipicu otomatis. Dependensi penjadwalan berbasis garis keturunan tabel (table lineage) tidak didukung untuk node downstream. Sebagai gantinya, tetapkan root node ruang kerja atau zero load node sebagai leluhur node downstream secara langsung.
Gunakan parameter penjadwalan dalam batch synchronization
DataWorks menyediakan variabel bawaan ${bizdate} untuk node batch synchronization. Secara default, parameter penjadwalan $bizdate diberi nilai ${bizdate}.
Untuk cara menggunakan parameter penjadwalan dalam sinkronisasi data, lihat bagian Deskripsi penggunaan parameter penjadwalan dalam sinkronisasi data di Ikhtisar fitur batch synchronization.
Untuk kasus penggunaan umum parameter penjadwalan, lihat Skenario penggunaan umum parameter penjadwalan.