Overview
Alex Petrov (2019, O’Reilly) — Deep dive into how distributed data systems work at the storage engine level. Fills the gap between high-level database textbooks and raw academic papers on B-Trees, LSM-Trees, and distributed consensus.
Historical Context
- Pre-2010: few options, mostly relational, small differences
- ~2010: NoSQL/eventually consistent databases emerge (Dynamo paper, 2007 → Cassandra, Voldemort, Riak)
- Post-2015: scalable databases with strong consistency returning
- The Dynamo paper’s impact was so significant it spawned an entire generation of distributed systems
Key Topics
Storage Engines
- B-Tree variants (B+Tree, B*Tree, copy-on-write B-Trees)
- Log-Structured Merge Trees (LSM-Trees)
- Trade-offs between read and write amplification
Distributed Systems
- Horizontal scaling (scaling out) vs. vertical scaling (scaling up)
- Consensus protocols
- Replication strategies
- Consistency models
Significance
This is the “internals” book that practitioners reference when they need to understand why a database behaves a certain way, not just how to use it. Covers concepts that directly inform system design decisions.
Related
- designing-data-intensive-applications — Kleppmann’s complementary higher-level treatment
- system-design-interview — Applied system design building on these foundations