Availability: In Stock

Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems

SKU: 9781449373320

Original price was: $59.99.Current price is: $46.90.

Designing Data-Intensive Applications, by Martin Kleppmann, is a vendor-neutral guide to the concepts behind modern data systems, published by O’Reilly.

It works through relational databases, NoSQL datastores, message brokers and stream processors, along with the distributed systems trade-offs in replication, partitioning, transactions and consistency models. It suits software engineers and architects building data-heavy systems. ISBN 9781449373320.

Description

Designing Data-Intensive Applications

Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems is a guide to the concepts behind modern data technologies, written by Martin Kleppmann and published by O’Reilly. It is written for software engineers and architects building data-heavy systems, and it stays vendor-neutral rather than teaching a single tool or framework. The book covers relational databases, NoSQL datastores, message brokers and stream processors.

It works through the trade-offs in distributed systems, including replication, partitioning, transactions, consistency models and consensus algorithms. The goal throughout is to turn abstract theory into the engineering decisions that keep a system reliable and maintainable as data volume and complexity grow.

Storage engines and how data is stored

A section explains the data structures behind modern databases, including B-trees and LSM-trees, and how they affect how data is stored and retrieved.

Distributed systems and their trade-offs

The book breaks down the challenges of distributed systems, covering replication lag, partitioning strategies and distributed transactions, the problems that show up once a system runs across more than one machine.

Batch and stream processing

Chapters cover approaches to deriving data from other data, from MapReduce to continuous event stream processing, and compare relational, document and graph data models on their strengths and weaknesses.

Book details

  • Title: Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
  • Author: Martin Kleppmann
  • Publisher: O’Reilly
  • ISBN-13: 9781449373320

Questions buyers ask

Who is this book for?

Software engineers and architects who design or build data-heavy systems.

Does it teach one specific database or tool?

No. It stays vendor-neutral, covering the concepts behind relational databases, NoSQL datastores, message brokers and stream processors.

What does it cover about distributed systems?

Replication, partitioning, transactions, consistency models and consensus algorithms, the trade-offs that come with running a system across more than one machine.

Does it cover stream processing?

Yes, from MapReduce-style batch processing to continuous event stream processing.

Does it compare different data models?

Yes, relational, document and graph data models are compared on their strengths and weaknesses.

Reviews

There are no reviews yet.

Be the first to review “Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems”

Your email address will not be published. Required fields are marked *