Projections, selections, and writing nested queries that hurt to look at.
Slotted pages, heap files, and minimizing disk I/O costs.
Clock algorithm, LRU, pinning pages, and keeping the hot data in RAM.
Internal nodes, leaf nodes, splitting, and merging. Peak database architecture.
External merge sort, linear hashing, and dealing with data larger than RAM.
Nested loop join, block nested loop join, and index nested loop join.
Sort-merge join, Grace hash join, and the System R optimizer.
Drawing boxes and diamonds to represent complex database schemas.
ACID properties, serializability, and conflict graphs.
Shared vs Exclusive locks, Strict 2PL, and preventing dirty reads.
Waits-for graphs, deadlock prevention, and Write-Ahead Logging.
Analysis, Redo, Undo. How the database resurrects itself after a crash.
Two-Phase Commit, CAP theorem, and NoSQL systems.