Database Design & Internals
Indexes, query planning, transactions and how databases are built.
Beginner
Start here. No background needed beyond school maths.
Database Normalization Description
A plain explanation of normalisation: why you split data into tables, the first three normal forms, and the trade-offs, with examples.
Sign up to see the source
DB-Engines Ranking
A monthly popularity ranking of database systems by type, handy for seeing which databases employers use and for comparing them.
Sign up to see the source
Advanced
Once the basics are comfortable.
Architecture of SQLite
A short tour of how a real database is put together: the tokenizer, parser, code generator, virtual machine, B-tree and pager.
Sign up to see the source
Let's Build a Simple Database
Build a small SQLite-style database in C, one step at a time: a REPL, a B-tree on disk, and how rows are stored and found.
Sign up to see the source
How Query Engines Work
A free book that builds a small query engine step by step, so you see how SQL becomes plans and results.
Sign up to see the source
Readings in Database Systems (the Red Book)
A curated reading list with commentary on the big ideas in database systems, from relational design to modern data stores.
Sign up to see the source
Expert
Research-level depth and specialist material.
CMU 15-721: Advanced Database Systems
Lecture notes, slides and recordings on modern database design: in-memory engines, query optimisation, vectorised execution and storage formats.
Sign up to see the source
The Internals of PostgreSQL
A detailed book-length guide to how PostgreSQL works inside: process and memory layout, query processing, transactions, the buffer manager and replication.
Sign up to see the source

