Definition
Streaming a database's row-level changes out to other systems as an ordered event feed.
How it works
Instead of polling or dual-writing, you tail the DB's commit log (e.g. Postgres WAL, MySQL binlog) with a tool like Debezium and publish each insert/update/delete to Kafka. Used to keep caches, search indexes and data warehouses in sync, and to evolve a monolith toward events without touching app code.
Common questions
What is Change Data Capture?
Streaming a database's row-level changes out to other systems as an ordered event feed.
How does Change Data Capture work?
Instead of polling or dual-writing, you tail the DB's commit log (e.g. Postgres WAL, MySQL binlog) with a tool like Debezium and publish each insert/update/delete to Kafka. Used to keep caches, search indexes and data warehouses in sync, and to evolve a monolith toward events…
What is Change Data Capture used for in system design?
Instead of polling or dual-writing, you tail the DB's commit log (e.g. Postgres WAL, MySQL binlog) with a tool like Debezium and publish each insert/update/delete to Kafka. Used to keep caches, search indexes and data warehouses in sync, and to evolve a monolith toward events…