Skip to content
About
Main content
Meaning

Schema Management & Evolution

What happens when the shape of your data changes on its own schedule, and nobody can change the readers, the writers and the old data at the same moment?

Who this mechanism is for: a developer who writes services, reads and writes JSON, CSV or database tables, and has probably renamed a or a field at least once. You do not need to know any data-platform internals. You do not need to know what a , a or a data is. Every technical term is explained the first time it appears, and again in the glossary at the end.

The story we will follow

Parcelo is a small company that tracks parcels for online shops. Every time something happens to a parcel (picked up, scanned at a depot, out for delivery, delivered), a service called tracking publishes a shipment event. Several other programs read these events: a warehouse app, a mobile app, a nightly job that loads events into a big table, a finance dashboard, and a CSV export for a partner company.

Ravi is the backend engineer who owns the tracking service. Sara is the analytics engineer who owns the finance reports. They sit in different teams. Ravi's job is to ship features. Sara's job is to make the numbers right. During this mechanism Ravi will change the shape of his events several times, in small and reasonable ways. Each change will break something he cannot see.

Each article below opens with a problem that looks like a bug in someone's code. Each one is really a consequence of how structure, time and coordination work. At the end of each article we go back and solve the problem with the mechanisms of that part.

This is the main idea of this whole mechanism:

How this mechanism is organized

After that: a summary, hands-on labs, interview questions and a glossary.

One request: read the one-line summaries in italics at the end of each section. They contain the rule you should remember.

What do I do, and what does each option cost?

Can I see it myself?

Can I reason about it under questioning?

Trade-offs

The tensions this mechanism takes a position on. Each recurs across mechanisms.

Recurring principles

Ideas this mechanism meets that keep coming back, mechanism after mechanism.

Show all 8 principles