Databases and data modeling
A schema is a set of promises about what the data means. Getting it right early is cheap and getting it wrong is expensive, so this course is about the decisions that are hard to reverse.
What you'll learn
10 chapters, then the quiz
- 01Why a databaseWhat it gives you that files do not.
- 02Tables, rows and typesThe basic shapes.
- 03KeysIdentity and reference.
- 04RelationshipsOne to one, one to many, many to many.
- 05NormalisationEach fact in exactly one place.
- 06TransactionsAll or nothing, even under load.
- 07IndexesSpeed for lookups, cost for writes.
- 08When not to use tablesDocument, key value and graph stores.
- 09Changing the schemaEvolving a live database safely.
- 10Backups and growthThe unglamorous half.
More programming tests
See all →- Easy
JavaScript fundamentals
Types, scope and the small surprises the language is famous for.
8 questions6 min - Easy
Python essentials
Syntax, built-in types and the everyday behaviour of the standard library.
8 questions6 min - Hard
Complexity and Big O
How algorithms behave when the input stops being small.
7 questions8 min