Rašykite dukart į seną ir naują, foniniame režime perkelkite istoriją (backfill), naudokite CDC uodegos pavijimui, patikrinkite šešėliniais skaitymais (shadow reads), tada atomiškai perjunkite skaitymus — su rollback keliu kiekviename žingsnyje. Niekada nestabdote aplikacijos; lygiagrečiai vykdote abi duomenų bazes, kol naujoji įrodomai identiška, tada perjungiate.
Architektūra
┌── write ──▶ OLD DB (source of truth) ──CDC (Debezium)──┐
App ───┤ ▼
└── write ──▶ NEW DB ◀──── backfill job (historical rows)
│
shadow reads (compare OLD vs NEW) ─▶ diff metrics ─▶ atomic cutover ─▶ NEW is truth
(flip flag; rollback = flip back)
