Skip to content
About
Main content
Time & Change

Table & Storage Maintenance

Who pays for the gap between the order data arrives in and the order it is read in: the writer, every reader, or a background job, and what is the break-even?

Who this mechanism is for: a developer who writes code, calls APIs and knows basic SQL, but has never operated a data lake or studied how , or databases clean up after themselves. You do not need any database knowledge. Every technical term is explained the first time it appears, and again in the glossary at the end.

The story we will follow

Nadia is the only data engineer at Stackwise, a small company that tracks parcels for online shops. Every scan of a parcel (picked up, in a van, delivered) is an event. Stackwise stores these events in one big table in cloud object storage, using a table format (a layer of metadata files that turns a pile of data files into one logical table with , and ). Her manager, Kofi, runs the customer dashboards on top of this table and promises customers that a dashboard opens in a few seconds.

Nothing in Stackwise's system is wrong. No code has a bug. Yet over six months the table slowly becomes slower, bigger and more expensive. In each article below Nadia meets a problem that looks like a bug. Each one is actually a consequence of a simple rule about maintenance: the background work that keeps a table healthy, that nobody asked for, and that changes no answer. At the end of each article we go back and solve her problem.

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.

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 7 principles