Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems (Paperback)
暫譯: 設計數據密集型應用程式:可靠、可擴展和可維護系統背後的大觀念 (平裝本)

Martin Kleppmann

買這商品的人也買了...

相關主題

商品描述

Data is at the center of many great challenges in system design. There are so many tools to choose from: databases, NoSQL datastores, stream and batch processors, caches, indexes, message brokers, and so on. Moreover, there are so many issues to consider: scalability, consistency, reliability, efficiency, maintainability. How do you make the right choices for your application? How do you make sense of all the buzzwords?

Designing Data-Intensive Applications is a comprehensive guide to the landscape of systems for storing and processing data. In this book, Martin Kleppmann covers a wide range of popular technologies, comparing their pros and cons. Although software keeps changing, the fundamental ideas behind it stay the same. Through this book, you’ll understand those principles, how they apply in practice, and how make full use of data in your applications.

With this book, you will:

  • Look under the hood of the systems you already use, so that you can use them more effectively and diagnose any issues
  • Know the strengths and weaknesses of different tools, letting you make informed decisions
  • Learn to navigate the trade-offs around consistency, scalability, fault tolerance, and complexity
  • Understand the distributed systems research upon which modern databases are built
  • Peek behind the scenes of major online services, and learn from their experience

商品描述(中文翻譯)

資料是系統設計中許多重大挑戰的核心。可選擇的工具有很多:資料庫、NoSQL 資料存儲、串流和批次處理器、快取、索引、訊息代理等等。此外,還有許多問題需要考慮:可擴展性、一致性、可靠性、效率、可維護性。你如何為你的應用程式做出正確的選擇?你如何理解所有的流行術語?

《設計資料密集型應用程式》是一本全面介紹資料存儲和處理系統的指南。在這本書中,馬丁·克萊普曼(Martin Kleppmann)涵蓋了各種流行技術,並比較它們的優缺點。儘管軟體不斷變化,但其背後的基本理念始終不變。通過這本書,你將理解這些原則,它們在實踐中的應用,以及如何充分利用應用程式中的資料。

通過這本書,你將能夠:

- 深入了解你已經使用的系統,以便更有效地使用它們並診斷任何問題
- 知道不同工具的優勢和劣勢,讓你能做出明智的決策
- 學會在一致性、可擴展性、容錯性和複雜性之間進行權衡
- 理解現代資料庫所建立的分散式系統研究
- 窺探主要線上服務的幕後,並從他們的經驗中學習