Why this matters
Your transactional DB has the source-of-truth for orders. You also need: a search index in Elasticsearch, a denormalized read store in Redis, an analytics warehouse, a notifications pipeline triggered on order events. Five downstream systems that all need to react to DB changes.
Naive: have your app write to all 5 after each DB write. No atomicity. If the search-index write fails, you have inconsistency. Plus your app code is now coupled to every downstream.
Change Data Capture tails the database's own transaction log (WAL) and emits each change as a Kafka event. Every downstream consumes from Kafka independently. The DB stays the single source of truth; sync to N systems is automatic; your app code stays small.