Database Engineering Roadmap
ADM: The Algorithm Design Manual -Steven Skiena- Third Edition (2020)
Database Internals: Database Internals -Alex Petrov- First Edition(2019)
DDIA: Designing Data-Intensive Applications -Martin Kleppmann, Chris Riccomini- Second Edition (2026)
Status: 0 / 26 completed (0%)
Phase 1: Storage Mechanics & Disk Structures
Readings
- ADM: Ch. 3 (Dictionaries/Trees) & Ch. 12 (B-Trees) - Notes
- Database Internals: Part I (Ch. 1–3: Storage & B-Trees) - Notes
- DDIA: Ch. 3 (Storage Engines, LSM-Trees vs. B-Trees) - Notes
Papers: The LSM-Tree (O'Neil, 1996) • Architecture of a Database System (Stonebraker, 2007)
Projects
- Project 1: Bitcask-style append-only key-value store with compaction
- Project 2: Disk-paged B+Tree implementation
Phase 2: Execution Engine & Buffer Management
Readings
- ADM: Ch. 4 (Sorting/Searching) & Ch. 5–6 (Graph DAGs)
- Database Internals: Ch. 4–5 (Transactions & Buffer Pools)
- DDIA: Ch. 3 (OLAP & Column-Oriented Storage)
Papers: Volcano Iterator Model (Graefe, 1994) • MonetDB/X100 (Zukowski, 2005)
Projects
- Project 1: Frame Buffer Pool Manager with LRU/Clock eviction
- Project 2: Volcano iterator query execution engine (Scans, Joins)
Phase 3: Concurrency Control & Crash Recovery
Readings
- Database Internals: Ch. 5–7 (2PL, MVCC, Write-Ahead Logging)
- DDIA: Ch. 7 (Transactions, Isolation Anomalies & SSI)
Papers: ARIES Recovery (Mohan, 1992) • ANSI SQL Isolation Critique (Berenson, 1995)
Projects
- Project 1: ARIES-style Write-Ahead Logging (WAL) & recovery manager
- Project 2: Snapshot-isolated MVCC tuple visibility manager
Phase 4: Consensus, Replication & Partitioning
Readings
- Database Internals: Part II (Distributed Consensus & Replication)
- DDIA: Ch. 5, 6, 8, 9 (Replication, Partitioning, Linearizability)
Papers: Raft Consensus (Ongaro, 2014) • Google Spanner (2012) • Dynamo (2007)
Projects
- Project 1: Raft-replicated state machine key-value store
- Project 2: Consistent-hashing distributed partition router