Alex Petrov's Database Internals is hard. It is the kind of book where you read a chapter, understand maybe sixty percent, go for a walk, come back, reread it, and understand eighty percent. That is normal. It is also the book that transforms you from "I use databases" to "I understand databases." That transformation is worth the effort.
B-trees, LSM-trees, Write-Ahead Logs, MVCC -- these are not abstract computer science concepts you study for trivia. They are the machinery that explains why PostgreSQL behaves the way it does under load. Why does a bulk INSERT slow down after a million rows? B-tree rebalancing. Why does a long-running transaction cause table bloat? MVCC keeping dead tuples visible. Why does PostgreSQL survive a power failure without losing committed data? WAL. Once you understand the internals, production behavior stops being mysterious.
This module connects directly to the Computer Systems path and the Algorithms path. File systems teach you how data hits disk -- sequential versus random I/O, page sizes, fsync. Data structures teach you B-trees, hash tables, skip lists. Database Internals is where those two rivers converge. You will read Petrov's explanation of B-tree page splits and recognize the data structure. You will read his explanation of write-ahead logging and recognize the file system operations. That convergence is the payoff of studying fundamentals.
After this module, you will read Designing Data-Intensive Applications in the Software Architecture path with completely different eyes. Kleppmann assumes you understand storage engines, replication protocols, and consensus algorithms. Petrov gives you that understanding. The two books are designed to be read in this order, even though their authors never coordinated. Read Petrov first. Trust me on this.