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.