Model the relationships your questions depend on
A schema is a choice about entities, relationships, history, and access. Normalization addresses dependencies; dimensional modeling makes analytical grain and history explicit. Learn what problem each approach solves.
Suggested route: Begin with dependencies and normalization, then choose a fact grain and connect dimensions. Follow physical layout choices into storage and scaling.
By the end: Explain what one fact row represents, which attributes change, and how historical answers stay correct.
Decision reference
| Design question | Concept |
|---|---|
| What determines an attribute? | Functional dependency |
| Where should a fact be stored? | Normalization |
| What does a measured row represent? | Fact grain |
| How do attributes change over time? | Slowly changing dimensions |
| Which data can a query skip? | Physical layout; see performance |
In this chapter
- Normalization & functional dependenciesReduce update anomalies by storing each fact at its natural grain.
- Fact tables, dimensions & slowly changing historyChoose an analytical grain before choosing keys or columns.
How to study
Use the suggested route above. For each lesson, explain the decision in your own words, test its example, and identify a situation where a different approach would be needed.