Dvostruko upisujte u staru i novu, backfillajte povijest u pozadini, koristite CDC da uhvatite rep, verificirajte shadow čitanjima, zatim atomski prebacite čitanja — s putem povrata (rollback) na svakom koraku. Nikada ne gasite aplikaciju; pokrećete obje baze paralelno dok nova nije dokazivo identična, zatim prebacite.
Arhitektura
┌── 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)
