Designing Data-Intensive Applications

Martin Kleppmann's book on reliable, scalable and maintainable data systems

94.0
Score in best programming books

Ranked 1 of 11 in best programming books

The strongest guide here to the trade-offs in data systems, covering replication, transactions and stream processing. It is paid and dense, so it suits engineers making design decisions rather than beginners.

Best for Designing reliable data systems

About Designing Data-Intensive Applications

The book covers how data systems store, replicate, partition and process data, and why the trade-offs matter. Chapters move from data models and storage engines to distributed systems, batch processing and stream processing. The focus is on concepts that stay useful as individual databases change.

The author's site lists the book as available in print and ebook formats. It suits software engineers and architects who choose databases, queues and data pipelines, and it does not teach one product in depth. The main trade-off is density: the text is long, and it takes time to work through its reasoning. The site offers no free full text.

Key features

  • Replication and partitioning
  • Transactions and consistency
  • Batch and stream processing
  • Storage engines

Strengths

  • Clear explanation of distributed data trade-offs
  • Focuses on concepts, not one database product
  • Covers storage, replication and stream processing

Limits

  • Dense, long reading
  • No free online edition on the author's site

Where Designing Data-Intensive Applications ranks

How Designing Data-Intensive Applications compares

ProductScorePriceFormatsLevelFree to read onlineLatest editionMain focus
#1Designing Data-Intensive Applications94.0PaidPrintIntermediateNoNot stated on the book siteData systems design and trade-offs
#2The Pragmatic Programmer, 20th Anniversary Edition92.5PaidPDF, EPUB, Kindle, PrintIntermediateNo20th anniversary editionSoftware craft and habits
#3Structure and Interpretation of Computer Programs91.0FreeRead onlineAdvancedYesSecond editionAbstraction and interpreters in Scheme
#4Crafting Interpreters90.5FreeRead online, PDF, EPUB, Kindle, PrintIntermediateYesNot stated on the book siteBuilding programming language interpreters
#5Eloquent JavaScript, 4th Edition89.5FreeRead online, PDF, EPUB, Kindle, PrintBeginnerYes4th edition, 2024Programming and JavaScript from first principles

The full comparison table for best programming books has all 11 products.

Questions about Designing Data-Intensive Applications

Is Designing Data-Intensive Applications free?
Designing Data-Intensive Applications is a paid product (paid). Print and ebook editions from bookstores; no free full text.
Which formats is Designing Data-Intensive Applications available in?
Designing Data-Intensive Applications is offered as Print.
What is Designing Data-Intensive Applications best for?
Designing reliable data systems. In our ranking of programming books it is number 1 of 11 with a score of 94.0.
What are the best alternatives to Designing Data-Intensive Applications?
The highest-ranked alternatives on listme.name are The Pragmatic Programmer, 20th Anniversary Edition, Structure and Interpretation of Computer Programs, Crafting Interpreters, Eloquent JavaScript, 4th Edition.

Show this ranking on your site

If you make or maintain Designing Data-Intensive Applications, this badge links back to this page and shows its current rank. It updates when the ranking does.

Ranked #1 of 11 programming books on listme.name
<a href="https://listme.name/books/designing-data-intensive-applications"><img src="https://listme.name/badge/designing-data-intensive-applications.svg" height="28" alt="Ranked #1 of 11 programming books on listme.name"></a>