Designing Data-Intensive Applications Front Cover

Designing Data-Intensive Applications

  • Length: 400 pages
  • Edition: 1
  • Publisher:
  • Publication Date: 2015-07-25
  • ISBN-10: 1449373321
  • ISBN-13: 9781449373320
  • Sales Rank: #4025 (See Top 100 Books)
Description

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

Want to know how the best software engineers and architects structure their applications to make them scalable, reliable, and maintainable in the long term? This book examines the key principles, algorithms, and trade-offs of data systems, using the internals of various popular software packages and frameworks as examples.

Tools at your disposal are evolving and demands on applications are increasing, but the principles behind them remain the same. You’ll learn how to determine what kind of tool is appropriate for which purpose, and how certain tools can be combined to form the foundation of a good application architecture. You’ll learn how to develop an intuition for what your systems are doing, so that you’re better able to track down any problems that arise.

Table of Contents

Part I. Foundations of Data Systems
Chapter 1. Reliable, Scalable, and Maintainable Applications
Chapter 2. Data Models and Query Languages
Chapter 3. Storage and Retrieval
Chapter 4. Encoding and Evolution

Part II. Distributed Data
Chapter 5. Replication
Chapter 6. Partitioning
Chapter 7. Transactions
Chapter 8. The Trouble with Distributed Systems
Chapter 9. Consistency and Consensus

Part III. Derived Data
Chapter 10. Batch Processing
Chapter 11. Stream Processing
Chapter 12. The Future of Data Systems

To access the link, solve the captcha.