← All writing
Aug 4, 2025 · 1 min read
Distributed Systems · Migration

Migrating 50M records with zero data loss

A big migration should be uneventful. For a 50M+ record move in ResMed's EU environment, the strategy was versioning plus feature flags: write to both shapes, read behind a flag, verify, then flip.

Coordination across multiple consumer services mattered as much as the data itself — each had to tolerate both old and new representations during the transition. We rolled forward in controlled steps and kept a clean rollback path the entire way.

Result: zero data loss across distributed systems, and a playbook the team could reuse.