
Free O'Reilly download, courtesy of ScyllaDB
Designing Data Intensive Applications
By Martin Kleppmann and Chris Riccomini
Coming Soon – Publication ETA mid-February 2026
In the significantly revised second edition of this must-read resource, Martin Kleppmann and Chris Riccomini help you navigate the options and tradeoffs for processing and storing data for data-intensive applications. Whether you're exploring how to design data intensive applications from the ground up or looking to optimize an existing real-time system, this guide will help you make the right choices for your application.
- Peer under the hood of the systems you already use, and learn how to use and operate them more effectively
- Make informed decisions by identifying the strengths and weaknesses of different approaches and technologies
- Understand the distributed systems research upon which modern databases are built
- Go behind the scenes of major online services and learn from their architectures

Get your free digital copy
This ~150 page book excerpt contains 3 new/revised chapters from the 2nd edition: Trade-offs in Data Systems Architecture, Defining Nonfunctional Requirements, and The Trouble with Distributed Systems.
Trade-offs in Data Systems Architecture: Considerations related to operational vs. analytical systems; cloud services vs. self-hosted systems; and single-node systems vs. distributed systems.
Defining Nonfunctional Requirements: Core principles underlying fast, reliable, scalable systems: how to measure performance, model load and capacity, handle failures, and manage complexity.
The Trouble with Distributed Systems: The wide range of things that can go wrong in distributed systems (network issues, clocks & timing issues) and the notions of knowledge and truth in distributed systems.
Hear what readers are saying about Designing Data-Intensive Applications
About the Authors
Martin Kleppmann
Martin is a researcher in distributed systems at the University of Cambridge. Previously he was a software engineer and entrepreneur at Internet companies including LinkedIn and Rapportive, where he worked on large-scale data infrastructure. In the process he learned a few things the hard way, and he hopes this book will save you from repeating the same mistakes.
Chris Riccomini
Chris Riccomini is a software engineer, startup investor, and author with 15+ years of experience at PayPal, LinkedIn, and WePay. He runs Materialized View Capital, where he invests in infrastructure startups. He’s also the cocreator of Apache Samza and SlateDB and coauthor of The Missing README: A Guide for the New Software Engineer.