data-migration
Data migration
Migrations are estimated as a data-movement problem and turn out to be a data-quality problem. The transfer is the easy part; discovering what the old system actually contains is where the time goes.
Profile the source before you map anything
Look at the real data, not the schema and not what anyone tells you it contains. Every legacy system has fields used for something other than their name, free-text where an enumeration was intended, duplicates that both look canonical, and records predating a rule everyone believes has always applied.
Count distinct values, null rates, format variance, and outliers on every field you intend to move. This is the single highest-return activity in a migration and the one most often skipped in favor of starting the mapping.
Decide what not to move. Migrating everything is the default and rarely the right answer. Archive what has no live use and move a clean subset — it shrinks the mapping, the reconciliation, and the cutover window all at once.