Data movement is where migrations get expensive and risky. Choose the simplest pattern that meets your continuity needs, then standardize it so every migration wave is repeatable.
Most teams get into trouble here by over-engineering. They jump to CDC or streaming because it sounds modern, then spend months operating pipelines that nobody asked for. Start simple. Add complexity only when the business actually needs it.
Batch is boring. That’s why it works.
Best when:
Typical risks:
CDC captures inserts/updates/deletes incrementally (often from database logs).
Best when:
Typical risks: