Change Data Capture
Teknik real-time untuk mendeteksi dan merekam perubahan data di database sumber (INSERT, UPDATE, DELETE) untuk disinkronkan ke sistem tujuan.
CDC (Change Data Capture) adalah proses yang mengidentifikasi dan menangkap perubahan yang terjadi pada database sumber secara real-time atau near real-time, kemudian menyebarkan perubahan tersebut ke sistem tujuan.
Database memiliki transaction log (WAL di PostgreSQL, binlog di MySQL) yang mencatat semua perubahan. CDC membaca log ini:
App → Database → Transaction Log → CDC Tool → Kafka → Consumer (DWH, etc)
Buat trigger di database yang menulis perubahan ke tabel audit:
Query secara berkala untuk record yang updated_at > last_run:
| Aspek | CDC | Batch |
|---|---|---|
| Latency | Detik | Menit-jam |
| Load di source DB | Rendah | Tinggi (saat query) |
| Menangkap DELETE | Ya | Tidak (biasanya) |
| Kompleksitas | Tinggi | Rendah |
| Use case | Real-time sync | Nightly ETL |
Proses integrasi data yang terdiri dari Extract (mengambil data), Transform (membersihkan dan mengubah format), dan Load (memasukkan ke sistem tujuan).
Serangkaian proses otomatis yang memindahkan dan mengubah data dari sumber ke tujuan secara terstruktur dan terjadwal.
Varian modern ETL di mana data diekstrak dan langsung dimuat ke tujuan, baru kemudian ditransformasi menggunakan kekuatan komputasi cloud data warehouse.
Udah paham CDC? Lanjut latihan SQL dan Excel yuk!
Latihan interaktif, langsung di browser.