Why does it behave this way?
217 articles from 33 mechanisms, each answering one question. Filter by a word in the question.
BandThe Machine: jump to another band
The Machine
Seven root causes: why trade-offs exist at all
Why does every storage system have trade-offs?
Storage media
What are disks, SSDs, tape and cloud storage made of, and what does that force on us?
3 pagesCPU and memory
Why does it matter more how predictable your code is than how much work it does?
2 pages
3 more
Bytes in Motion
From one machine to two
Why is data movement a different kind of problem from anything inside one machine?
2 pagesTransport patterns
Which four questions characterize any transport, and where do eight real patterns sit on the three decoupling switches?
7 pagesFlow control
When arrival rate exceeds service rate, what are the only four responses, and what does each sacrifice?
7 pages
4 more
Routing and distribution
Which four properties does every routing choice trade, and why is routing the hardest decision to reverse?
9 pagesNetwork-level mechanisms
Which network mechanisms change what your system means, and which only change how fast and how cheaply bytes move?
5 pagesDelivery across a pipeline
At a crossing, where do loss, duplicates and reordering come from, and which of them should you choose?
4 pagesData movement, stepped back
How do the four groups of decisions compose, and what kind of domain is data movement as a whole?
Bytes at Rest
Data at rest and the one ratio
What is different about data at rest, and which one ratio explains most of the cost?
Layout models
Should a row, a column or a group of rows be the unit that sits together?
3 pagesMutation strategies
What physically happens when a value changes, and who pays: in place, copy-on-write or merge-on-read?
3 pages
3 more
Physical clustering
How do we arrange rows so that whole units can be skipped without reading them?
4 pagesAccess and media
What does one touch of storage cost, and why does that set the size of every unit?
2 pagesWhat physical organization forbids
What can no storage arrangement do, and what does the whole mechanism reduce to?
The frame: what "durable" means
Why is durability not a yes/no property, and which two numbers measure it?
Logs and undo
How does a write-ahead log turn many random durable writes into one sequential write, and why does redo exist?
3 pagesGroup commit and fsync
Why does one flush per commit cap throughput, and how does sharing a flush lift the ceiling with no tuning?
2 pages
5 more
Bounding the log
Which two liabilities does every commit build up, and what does recovery time really depend on?
3 pagesSurviving your own mistakes
Why is a snapshot a garbage-collection policy rather than a copy, and what does keeping one cost?
2 pagesWhen the storage lies
Why does a write larger than the device's atomic unit break recovery, and which three ways close the hole?
3 pagesDurability across machines
How do copies on several machines raise durability, and what do they cost?
2 pagesDurability across a pipeline
When data passes through several systems, whose "yes" is the reader's promise, and for how long does it hold?
The big picture: a data structure is a bet
Why is a data structure a bet, and why does Big-O no longer tell us which one wins?
Lookup structures
Why is every lookup structure a decision about when to pay for reconciling arrival order with access order?
9 pagesOrdering structures
Why is sorting the one unavoidable superlinear, blocking operation, and why is full order usually more than a question needs?
6 pages
4 more
Probabilistic structures
At what exchange rate do sketches trade correctness?
10 pagesBit-level structures
Why do space and speed move together at the bit level, and how do encodings differ from compression?
6 pagesConcurrency-friendly structures
Why can throughput fall as threads are added?
6 pagesPutting the pieces together: the five currencies and the four compositions
Which few fixed arrangements explain how real systems combine these structures?
Bytes become an output
Why is byte count a choice here, and when is compression worth its CPU cost?
Serialization
How do we turn a record into bytes, and who tells the reader what the bytes mean?
3 pagesLightweight compression
Why does the order of the rows change the compression ratio more than the choice of codec?
5 pages
Why indexes exist
When is a separate index worth building, and what exactly do we trade?
Index anatomy
Which four independent choices define every index entry, and what single tension sits under all of them?
10 pagesKey domains
Which single criterion decides whether a predicate can be pruned, and how does each key domain fare against it?
7 pages
Concurrency & Consistency
Why concurrency is different
Why does ten times more throughput create a hundred times more conflict, and how should we think about correctness when many users act at once?
2 pagesLocking
Why is every concurrency scheme an algorithm that keeps the serialization graph free of cycles, and how do schemes differ?
5 pagesMultiversion and optimistic schemes
Why does one long read pin every old version?
7 pages
A promise about histories
What kind of thing is a consistency model, and why can a guarantee not be observed from inside the system?
3 pagesTransactional isolation
Why is one edge type different from the others?
6 pagesDistributed consistency
Why does a reader's choice of copy, not the writes, produce the anomaly once there are many copies?
5 pages
3 more
Sessions, convergence and quorums
What does a single client need in order not to see nonsense, and why do infrastructure changes break it?
4 pagesThe unification and its price
What does CAP really say and not say, and why does the 'else' branch of PACELC carry most of the cost?
4 pagesWhat consistency forbids
What can no consistency design give, and what does each escape cost?
2 pages
Query Engines
Why a query has many plans
Why does a query have a huge space of equal-answer plans, and which few ideas explain the cost of every plan?
Relational operators
Where do silent wrong answers start?
3 pagesJoin algorithms
Is the join's index built now, built earlier or replaced by order, and what does each choice cost in memory and I/O?
4 pages
4 more
Aggregation algorithms
Why is aggregation the one operator that can be done in pieces, and how do hash and sort aggregation spend memory?
3 pagesSorting
What does an external sort really cost, and how does a distributed sort turn a global merge into a concatenation?
2 pagesSet and dedup operations: aggregation with an empty accumulator
How do UNION, INTERSECT, EXCEPT and DISTINCT follow from what we already know, and which shortcut is dangerous?
What query processing forbids
What does this whole layer forbid, and what does each escape cost?
Limited by what it can know
Why is planning a different kind of problem from everything below it, and why do estimation errors grow so fast?
2 pagesFrom SQL text to a plan
Which planning stages are certain and which are risky, and how late can the uncertain decisions be put off?
4 pagesEstimating cost
Why does the cost model matter far less than the four assumptions behind cardinality estimates?
3 pages
5 more
Join order search
How can an optimizer search a space with billions of plans, and what happens when it cannot?
Rewrites
What does decorrelation really buy, and why is NOT IN slow where NOT EXISTS is fast?
4 pagesData reduction
Why do data-reduction mechanisms dominate, and why is their limit the interface's vocabulary?
9 pagesExecution decisions
How do mechanisms move a decision earlier, later, or away entirely, and what does each position cost?
7 pagesDiagnosing a bad plan, and what planning forbids
In what order should you look for the cause of a bad plan, and what can planning never do?
Three idlenesses
Why is elapsed time not "work divided by capacity", and what are the only three reasons a machine sits idle?
Inside one worker
What does it cost to hand a row from one operator to the next?
3 pagesAcross machines
When the handoff costs milliseconds and can fail, how do you choose an execution model?
2 pages
3 more
Where parallelism comes from
Why does adding cores stop helping, and what is the ceiling for data, pipeline and task parallelism?
2 pagesSkew and elasticity
What do you do when one piece of work is simply too big, and when does adding machines mid-query pay off?
The shuffle
Why does moving rows between stages cost a product of two widths, and what governs that cost?
4 pages
Memory is a space resource
Why can memory not be shared by taking turns, and what two moves does that leave?
3 pagesOwnership
What does general-purpose memory management charge for, and what do phase-structured lifetimes let you stop paying?
8 pagesResidency
Why is a buffer-pool miss not optional, and why is eviction a transaction rather than a deletion?
9 pages
3 more
Rationing
Why does memory need an admission gate while CPU and disk are scheduled, and what does the gate force you to estimate?
6 pagesDegradation
Why is spilling a change of algorithm rather than overflow, and what two problems does it buy?
7 pagesWhat memory management forbids
Which five things are impossible in memory management, and what does each way of living with them cost?
The second copy
Why is a cache's exchange rate the worst in the system?
2 pagesWhat makes data cacheable
What number should you measure instead of tuning the hit rate?
10 pagesThe derivation ladder
Why does climbing the derivation ladder raise what an entry saves while lowering how often it can be used?
6 pages
3 more
Keeping it honest
In which currencies can the gap between a cache and the truth be closed, and why is verification underused?
9 pagesMaking it fit
Why can no eviction policy beat a proven bound, and where must improvement come from instead?
6 pagesWhat caching forbids
Which nine things can no cache design do, and who pays for each way around them?
Distribution & Failure
No shared present
What changes when one authority must be manufactured from machines that share nothing but messages?
4 pagesDistribution of data
Why are partitioning and replication different tools, and what arithmetic does every distributed layout divide by?
8 pagesDeciding without observing
Why does coordination define checkable substitutes instead of observing liveness or ownership?
14 pages
Why failure recovery is a different kind of problem
Why can a system not simply find out what happened?
Recovery mechanisms
From what can interrupted state be rebuilt, and which failure model do all nine recovery mechanisms assume?
9 pagesMaking a repeat harmless
Why can a duplicate not be prevented at the sender, and where can the record of 'already done' be kept?
8 pages
Feedback loops
What changes when the offered load depends on the system's own latency?
10 pagesMetastable failure
How can two identical systems under identical load be in different states?
7 pagesCascading failure
Why is the dependency graph that governs failure not the one on the architecture diagram?
9 pages
4 more
Gray failure
Why can no failure detector decide whether a component is dead or slow?
8 pagesDeath spirals
Why does deferred work become a debt whose interest rises with the balance?
7 pagesOverload defences
Why must every overload defence lose work on purpose, and which three things can it change?
5 pagesWhat failure dynamics forbids, and six questions for any design
What does the whole of failure dynamics forbid, and which six questions find these failures in a design review?
Resources & Cost
What scheduling is
Why does scheduling decide who waits rather than how work runs, and which number does it always lack?
2 pagesDeciding when
Why is total busy time fixed under every work-conserving policy, and which number would make ordering easy?
11 pagesDeciding where
In which four ways do machines differ, and why do those ways disagree?
8 pages
Pricing primitives
What is actually metered in a price, and why does cost have no failure detector?
11 pagesDesign consequences
Which designs would not exist under a different price list, and how do you test that claim?
9 pagesElasticity
Why is the spread between on-demand, committed and spot prices the price of your uncertainty?
8 pages
3 more
Control and attribution
Why can a monthly bill not control spending, and why does control need two loops?
7 pagesAnti-patterns
Why is anti-pattern the wrong word for a design that leaks a price through its abstraction?
4 pagesWhat lasts
Which four things do pricing mechanisms forbid, and which escape is cheapest?
2 pages
Time & Change
Three clocks
Which 'time' is on a record, who wrote it, and how far can we trust it?
2 pagesWatermarks: declaring completeness
How can a pipeline declare that everything before time T has arrived when it cannot know?
Late data and triggers
What can be done with a record that arrives after the watermark, and what does accepting it cost in state?
3 pages
4 more
Partitioning and corrections
Should files be partitioned by event date or by ingestion date, and what does each choice cost?
2 pagesBitemporal data and joins
Why does a fact need two time axes, and why is time travel not a substitute for them?
2 pagesCalendars, clocks and expiry
Why is a local time a query against a mutable legal database, and why is date arithmetic not associative?
3 pagesWhat time semantics forbids, and what each way out costs
Which things can never be had together, and what does each way out cost?
The job that never ends
Why does volume stop being the unit of capacity, and why must state outlive the process?
2 pagesState
What do stateless operators get for free, and when does an operator stop being stateless?
5 pagesTime-shaped state
When are sliding windows cheap, and why do session windows need a maximum length?
4 pages
6 more
Joins and enrichment
Why is every stream-stream join an interval join, and why are its errors absences?
2 pagesChangelogs and queryable state
Why is a stateful operator's output a changelog, and what does retraction demand downstream?
2 pagesCheckpoints and exactly-once
How does a job take a consistent snapshot while records flow, and what do aligned and unaligned barriers cost?
3 pagesRescaling and upgrades
Why is keyBy a live shuffle through a fixed indirection table, and why is its size permanent?
3 pagesBackpressure and batching
Why can a stream engine slow its source safely, and how do you find the real bottleneck?
2 pagesWhat streaming forbids, and what the escapes cost
What can a streaming design never verify?
The break-even
What two new constraints appear when you read changes out of a system you do not own?
3 pagesDetect
Which detection methods exist, and what does each rung down give up?
4 pagesCoarse incrementality
When is incrementality just a watermark comparison, and where does it fail?
2 pages
4 more
Bootstrap and represent
How do you combine a snapshot with a live stream without locking the source?
4 pagesApply
What does a merge assume about keys, and what happens when the key is missing, duplicated, changed or null?
4 pagesRepair
Why should a backfill overlap the live pipeline on purpose rather than meet it exactly?
2 pagesWhat change data capture forbids, and what escaping costs
What can incremental processing never do, and what does each escape cost?
The first work nobody requested
Why does a correct table degrade on its own, and why does maintenance get switched off?
Layout restoration
What file size minimizes scan time, and what stops files from growing larger?
5 pagesReclamation
Why can vacuum compute reachability but only guess liveness, and what does the retention window really bound?
3 pages
3 more
Semantic migration
Why are partition changes different from compaction, and what does evolving a spec in metadata cost?
4 pagesRunning maintenance safely
Why does a long compaction keep losing to short appends, and how does semantic conflict detection fix it?
4 pagesWhat maintenance forbids
What can no maintenance scheme do, and what does each escape cost?
Meaning
A layer with no oracle
Why is data modeling a different kind of problem from the storage and execution problems below it, and which four ideas does it reduce to?
Grain and table shape
How do you declare what one row is, and why should you store the finest grain the source emits?
3 pagesConformed dimensions, the bus matrix, role-playing dimensions and reference data
How do many teams make their numbers comparable without N² private translations?
8 more
Time and keys
Why can no single stored version answer both as-was and as-is, and what does each SCD type keep?
2 pagesMeasures
Which measures can be summed across which dimensions, and why must ratios be recomputed rather than averaged?
3 pagesMany-to-many: bridge tables, fan traps and chasm traps
Why do totals become too large after a correct-looking join, and what is an honest fix?
Binding styles
What does Data Vault cost the people who read it?
3 pagesMeaning and identity
Why is a metric a computation and not a value, and what does a semantic layer really enforce?
2 pagesHierarchies and nested data
Which of the four tree encodings fits, and what does each pay when a subtree moves or the tree changes over time?
2 pagesPipelines and events
Why materialize a pipeline at the boundaries where trust changes, and what makes a layer a contract rather than a copy?
2 pagesWhat data modeling forbids
What does the whole layer forbid, what do the escapes cost, and which laws repeat?
A new kind of problem
What makes a schema change a multi-party coordination problem with no atomic update?
Identity
How does a reader map bytes to fields, and why is position-based identity silently fatal?
2 pagesWhere structure is bound
Why is validation work only ever moved, and why is binding a per-field decision?
3 pages
4 more
Compatibility
What do backward, forward and full compatibility each allow, and why must the check be transitive?
5 pagesEnforcement
What happens when the schema registry is down?
4 pagesEvolution at scale
Why do you migrate the schema rather than the data, and what invariant follows?
3 pagesWhat schema evolution forbids
What can never be done with schemas, and what does each escape cost?
From proof to hypothesis
Why can no system prove its data is right, and how do validation and reconciliation differ?
3 pagesThe free tier
Why are constraints free in one database and costly in a distributed one, and why is an unenforced one still dangerous?
2 pagesBeyond one record
Why are cross-field rules cheap, and why does a cross-table check have a false-alarm floor?
3 pages
4 more
Gates, quarantine, stop-the-line
Which actions can a failed check take, and why did dataset-level gating need a pointer swap?
4 pagesDeduplication: three different problems in one word
Why does fuzzy matching have a recall ceiling, and why does loosening a threshold collapse clusters?
The reconciliation ladder
Why is detecting a difference cheap while locating it is the real cost?
6 pagesWhat data quality can claim
What is the single claim of data quality, and what is still unsolved?
Claims about data
Why do facts about data fail quietly, and what governs metadata instead of bytes?
3 pagesThe addressing layer
Why does keying metadata on a name turn every rename into a silent delete?
5 pagesThe description layer
Why are scan-based statistics stale where it matters most, and what makes write-time statistics exact?
4 pages
3 more
The relationship layer
How does metadata get collected, and why is coverage the quality number that matters?
5 pagesThe social layer
Why does ownership decay fastest, and what should it be derived from?
5 pagesWhat metadata forbids, and what the escapes cost
What can no metadata system do, and what does each escape cost?
Operations
A layer that moves nothing
Why is coordination free here, and what can an orchestrator never observe or undo?
2 pagesGraphs and time
What does an edge in a DAG claim, and how does failure travel along it?
2 pagesTriggers
What do events buy, and why can an arrival stream never say a batch is complete?
3 pages
6 more
Safe re-execution
Why is catchup a design error?
3 pagesDeadlines, branches, graph shape
Why can an orchestrator not detect its own absence, and what makes a deadline a service level?
4 pagesTeams and limits
Why is a dependency across an ownership boundary an organizational problem rather than a technical one?
2 pagesDurable execution
How does logging every effect let one program survive crashes, and when is it better than a DAG?
3 pagesPriority and the scheduler
Why does upstream priority rarely change who runs first, and how do backfills starve live work?
2 pagesWhat orchestration forbids, and the price of each escape
What does orchestration forbid, what escapes exist, and what do they cost?
A second machine
Which three constraints shape every observability system, and why does exactness stop mattering?
2 pagesEmission
Why do counters survive lost scrapes when gauges do not, and why can percentiles never be averaged?
5 pagesData-state observables
Why are datasets correct per arrival rather than per request, and why are ETAs so often wrong?
3 pages
Why security is different
What changes when the opponent watches your design and chooses how to attack it?
2 pagesIdentity and access
Why is authentication the problem of proving a secret without creating a secret?
3 pagesEnforcement points
What does fine-grained access control cost, and why does row filtering not stop inference?
5 pages
4 more
Protection
Why does protection shrink the secret rather than remove it?
6 pagesPrivacy
Why is the only privacy lever the destruction of information?
6 pagesWhere it breaks
Why are the field's weak points one group, and why do controls that are all green still leave data exposed?
6 pagesWhat security forbids
What can no combination of access control, protection and privacy give you, and what position is left to choose?
Special Shapes & Boundaries
When a predicate is not a range
In which three ways does the reduction to a range fail, and which five families does that create?
2 pagesText search
Why is scoring the real cost of text search, and why is an inverted index columnar storage at its extreme?
6 pagesVector search
Why is brute-force similarity search memory-bound, and why does compression buy speed first?
5 pages
4 more
Graph
Why can graph work not batch by address, and what does CSR layout buy?
4 pagesGeospatial
Why is a coordinate meaningless without its reference system, and where does geospatial difficulty move?
4 pagesTime series
Why does one new label bring down a metrics store when data volume barely changes?
4 pagesWhat specialization adds
Which shape of answer does each family take, and what does a new system cost beyond its engine?
The boundary
What is different once producer and consumer cannot be updated together?
2 pagesFile formats
Who interprets a file, the writer once or every reader forever, and what decides splittability?
6 pagesAccess protocols
What changes when a back-channel exists, and why is declarative SQL the shape that lets the callee be smart?
5 pages
Method
Experiment design
Why is a measurement a fact about one configuration, and why does experiment design need its own method?
6 pagesLoad generation
Why does a closed-loop load test let the system choose its own arrival rate?
3 pagesThe right quantity
Why must you keep the shape of the data before you know the question?
4 pages
5 more
Statistical hygiene
Why is the run the sample rather than the operation?
3 pagesAttribution and profiling
What do on-CPU and off-CPU flamegraphs show, and what can a handful of samples not show?
4 pagesStandard benchmarks
What do standard benchmarks buy, and which parts of a system does each put on trial?
2 pagesReproducibility and validity
Why are repeating a result and generalizing it different questions, and how far does a container pin?
4 pagesBeyond staging
What can only an experiment on the real system show, and what turns a measured difference into a result you can reuse?
2 pages