CDC

Change Data Capture

Lanjutan

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.

Bagaimana CDC Bekerja?

Method 1: Transaction Log CDC (paling umum)

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)

Method 2: Trigger-based CDC

Buat trigger di database yang menulis perubahan ke tabel audit:

  • Mudah diimplementasikan
  • Overhead performance tinggi
  • Cocok untuk tabel kecil

Method 3: Timestamp-based CDC

Query secara berkala untuk record yang updated_at > last_run:

  • Sederhana dan portable
  • Tidak menangkap DELETE
  • Tidak benar-benar real-time

CDC vs Batch Ingestion

AspekCDCBatch
LatencyDetikMenit-jam
Load di source DBRendahTinggi (saat query)
Menangkap DELETEYaTidak (biasanya)
KompleksitasTinggiRendah
Use caseReal-time syncNightly ETL
Lanjut Latihan

Udah paham CDC? Lanjut latihan SQL dan Excel yuk!

Latihan interaktif, langsung di browser.

Mulai Latihan →