What is Change Data Capture (CDC)?
Change Data Capture (CDC) is a technique that continuously detects and streams the inserts, updates, and deletes happening in a source database, so downstream systems stay in sync in near-real-time instead of relying on slow, full reloads.
At a glance
- Captures row-level changes (insert/update/delete) as they happen.
- Log-based CDC reads the database transaction log — low overhead, no heavy queries.
- Enables near-real-time analytics and replication without full table reloads.
- Common feeders: Debezium, Fivetran, and streaming platforms like Kafka.
How it works
The most robust form, log-based CDC, reads the database's own transaction log (the write-ahead log Postgres keeps, MySQL's binlog, and so on). Every committed change is already recorded there, so CDC can stream those changes out without running expensive queries against the live tables or adding triggers.
Each change becomes an event — 'row 42 updated, price changed from 10 to 12' — that flows to a target: a data warehouse, a lakehouse's Bronze layer, a cache, or another database. The target applies the change and stays current within seconds.
Why it matters
Before CDC, keeping analytics fresh meant periodic full or batch reloads — slow, heavy, and always a little stale. CDC replaces that with a continuous trickle of just the changes, which is far cheaper and enables near-real-time dashboards, replication, and event-driven systems.
In a modern stack, CDC typically feeds the raw (Bronze) layer of a medallion architecture, often routed through a streaming platform like Kafka so many consumers can react to the same change stream.
Frequently asked questions
What is log-based CDC?
Log-based CDC reads a database's transaction log (e.g. Postgres WAL, MySQL binlog) to capture changes. It's the lowest-overhead method because the changes are already recorded there — no extra queries or triggers on the live tables.
How is CDC different from a full data reload?
A full reload copies the entire table every time, which is slow and quickly goes stale. CDC streams only what changed, continuously, so targets stay in sync in near real time at a fraction of the cost.
What tools provide CDC?
Debezium (open source) is a common engine; managed tools like Fivetran and Airbyte offer CDC connectors, and the change stream is often carried over Apache Kafka or a similar streaming platform.
Is CDC real-time?
It's near-real-time — changes typically propagate within seconds. It's not instantaneous, but it's dramatically fresher than batch reloads and fast enough for most operational analytics.
Putting Change Data Capture (CDC) to work?
We help data & AI teams design and ship this in production. Tell us what you're building and we'll point you at the shortest path.
Talk to our team