Fă dual-write către vechi și nou, fă backfill la istoric în fundal, folosește CDC pentru a prinde din urmă coada, verifică cu shadow reads, apoi comută citirile atomic — cu o cale de rollback la fiecare pas. Nu oprești niciodată aplicația; rulezi ambele baze de date în paralel până când cea nouă este dovedit identică, apoi faci cutover.
Arhitectură
┌── 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)
