Practice
Schema evolution strategies, from polite to catastrophic
Schemas change; the only choice is how much warning anyone gets. The four strategies in the wild, reviewed from safest to most exciting.
By The editors · · 2 min
Every schema is a promise somebody will eventually want to break. The strategies below are ranked by how much warning the downstream world gets, which is to say, by how the pager stays quiet.

Additive-only, the polite default. New columns are added, old columns are never renamed or retyped, deprecated fields get a sunset date and a shame report of who still reads them. Consumers ignore what they do not select. This covers most evolution most of the time, and its only cost is tolerating some cruft between cleanups.
Versioned interfaces, for the breaking cases. When a type must
change or a column must die, publish orders_v2 beside orders_v1
and migrate consumers on a schedule. It is duplication with a purpose;
the purpose is that nobody discovers the change in production. Table
formats handle the mechanics of
additive evolution natively
now; versioning is for the changes the format cannot make safe.
Coordinate-and-pray. A Slack announcement, a two-week grace period, a simultaneous deploy. Works in small teams with short memory chains; scales exactly as well as any plan whose failure mode is "someone was on vacation".
The silent rename. Change it upstream, let the nulls propagate, learn who your consumers were from the incident channel. Reviewed here only for completeness, the way field guides include the mushrooms you must not eat. Even this one is survivable where the four-check floor runs; the null check pages someone before the board deck does.
the prerequisite all four strategies share
Every strategy above assumes you can answer one question: who reads this column. Without consumer visibility, additive-only cannot schedule its cleanups, versioning cannot end its migrations, and coordination is a broadcast to an unknown audience. The answer does not require a lineage product; the warehouse query history, grouped by table and column where the engine exposes it, names your readers in an afternoon. Teams that maintain even a crude consumer register evolve schemas on calendars. Teams that do not, evolve them on incident timelines, and then buy the lineage product during the postmortem, at which point it is a condolence card.
verdict
Additive-only plus contracts at the team boundaries prevents the common disasters; explicit versioning handles the rare legitimate breaks. The last two strategies are not strategies. They are incident reports with a delay timer.