Skip to main content

Reference and Selective Reading

Concept pages are the main path. Use this reference when you want to return to the primary text chunks for a specific topic. Every path below is relative to this module.

Database Internals (Petrov) -- Primary

Stored under ../../../books/Database%20Internals/contents/.

Part I: Storage Engines (Chapters 1-6)

  • Overview and classification: 002-chapter-1-introduction-and-overview.md, 003-dbms-architecture.md
  • Column- vs row-stores: early chapters in Part I
  • File format and pages: 014-file-format.md, 015-binary-encoding.md, 016-general-principles.md, 017-page-structure.md, 018-slotted-pages.md, 019-counting-keys.md
  • Cell layout: 020-cell-layout.md, 021-combining-cells-into-slotted-pages.md, 022-managing-variable-size-data.md

B-Tree-Family Indexes (Chapters 2-4)

  • B-tree basics: 006-introducing-b-trees.md, 007-ubiquitous-b-trees.md, 008-b-tree-hierarchy.md, 009-separator-keys.md, 010-b-tree-lookup-algorithm.md, 011-b-tree-node-splits.md, 012-b-tree-node-merges.md, 013-summary.md
  • Binary search and access in page: 023-versioning.md, 024-checksumming.md, 025-summary.md, 026-chapter-5-transaction-processing-and-recovery.md (do not confuse -- listed only where near in ordering)
  • Implementation: 027-implementing-b-trees.md, 028-page-header.md, 029-magic-numbers.md, 030-sibling-links.md, 031-rightmost-pointers.md, 032-node-high-keys.md, 033-overflow-pages.md, 034-binary-search.md, 035-binary-search-with-indirection-pointers.md, 036-propagating-splits-and-merges.md, 037-rebalancing.md
  • Variants and advanced techniques: 038-right-only-appends.md, 039-bulk-loading.md, 040-compression.md, 041-vacuum-and-maintenance.md, 042-fragmentation-caused-by-updates.md
  • Concurrency on B-trees: 043-lock-based-concurrency-control-part-1.md, 044-lock-based-concurrency-control-part-2.md
  • Modern tree variants: 045-summary.md, 046-copy-on-write.md, 047-abstracting-node-updates.md, 048-fd-trees.md, 049-logarithmic-runs.md, 050-structural-modification-operations.md, 051-van-emde-boas-layout.md

LSM-Trees (Chapter 7)

  • 052-lsm-trees.md, 053-lsm-tree-structure.md
  • 055-reconciliation.md, 056-read-write-and-space-amplification.md, 057-skiplist.md, 058-compression.md, 059-wisckey.md, 061-llama-and-mindful-stacking.md, 062-part-i-conclusion.md

Transactions, Concurrency, Recovery (Chapters 5 and 6)

  • Transactions and recovery intro: 026-chapter-5-transaction-processing-and-recovery.md
  • Buffer management, lock manager, log manager
  • ARIES and recovery; serializability
  • Isolation levels and MVCC

Note: specific chunk filenames for Part I chapters 5-6 appear between chunks 026 and 050. Verify within the folder if a specific paragraph is needed.

Designing Data-Intensive Applications (Kleppmann)

Stored under ../../../books/DDIA/contents/.

Chapter 3 -- Storage and Retrieval (pivotal)

  • Hash indexes and log-structured storage
  • SSTables and LSM-trees
  • B-trees
  • Comparing B-trees and LSM-trees
  • Secondary, multi-column, and fuzzy indexes
  • In-memory vs on-disk storage

Chapter 7 -- Transactions (supplementary for Cluster 5)

  • Weak isolation levels: Read Committed, Snapshot Isolation
  • Serializability: actual serial, 2PL, SSI

Database System Concepts (Silberschatz, Korth, Sudarshan)

Stored under ../../../books/Database%20System%20Concepts/contents/.

  • Physical storage and file organization
  • Indexing and hashing: B+-trees, static/dynamic hashing, bitmap indexes
  • Query processing: selection, join, sort, evaluation
  • Query optimization: equivalence rules, cost estimation, join-order enumeration
  • Concurrency control: lock-based protocols, timestamp ordering, validation, MVCC
  • Recovery system: log-based recovery, ARIES, checkpointing

Distributed Systems: Concepts and Design (Coulouris et al.)

Stored under ../../../books/Distributed%20Systems%20Concepts%20and%20Design/contents/.

Peripheral to this module. Consult only if you need cross-machine framing already in Module 2 (rare). Preferred use is in Module 3 onward.

Reading Policy

  • Always start from the concept page. Open a book chunk only when a concept page plus its drill has not been enough.
  • If you find yourself reading linearly through a chapter, you are studying the book, not the module. Stop and return to the concept page you were trying to finish.
  • The module's Completion Standard is met from concept pages, practice, and exercises -- not from book volume.