Software → Databases
Schema Evolution
Changing data schemas over time while preserving compatibility, correctness, and operability.
Schema Evolution
Schema evolution is the controlled change of database, event, and serialized-data structures as software versions coexist. Common changes include adding fields, splitting tables, changing constraints, and migrating representations.
Compatibility-first changes
Safe evolution often uses expand-and-contract: introduce a compatible shape, deploy readers and writers that tolerate both forms, migrate data, then remove the obsolete shape. Rollback, backfill cost, validation, and mixed-version behavior should be planned before deployment.