Dual-write til gammel og ny, backfill historik i baggrunden, brug CDC til at indhente halen, verificér med shadow reads, flip så reads atomart — med en rollback-path ved hvert trin. Du tager aldrig appen ned; du kører begge databaser parallelt, indtil den nye er beviseligt identisk, og cutter så over.
Arkitektur
┌── 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)
