How it works
Why does it behave this way?
- 1
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?
- 2
Grain and table shape
How do you declare what one row is, and why should you store the finest grain the source emits?
3 pages - 3
Conformed dimensions, the bus matrix, role-playing dimensions and reference data
How do many teams make their numbers comparable without N² private translations?
- 4
Time and keys
Why can no single stored version answer both as-was and as-is, and what does each SCD type keep?
2 pages - 5
Measures
Which measures can be summed across which dimensions, and why must ratios be recomputed rather than averaged?
3 pages - 6
Many-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?
- 7
Binding styles
What does Data Vault cost the people who read it?
3 pages - 8
Meaning and identity
Why is a metric a computation and not a value, and what does a semantic layer really enforce?
2 pages - 9
Hierarchies 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 pages - 10
Pipelines and events
Why materialize a pipeline at the boundaries where trust changes, and what makes a layer a contract rather than a copy?
2 pages - 11
What data modeling forbids
What does the whole layer forbid, what do the escapes cost, and which laws repeat?