Designing data-intensive applications : the big ideas behind reliable, scalable, and maintainable systems / Martin Kleppmann.Material type: TextPublisher: Beijing : O'Reilly, 2017Edition: First editionDescription: xix, 590 pages : illustrations, charts ; 24 cmContent type:
- 005.3 KL.D 2017 23
- QA76.76.A65 K612 2017
|Item type||Current library||Call number||Status||Date due||Barcode|
|Books||The Knowledge Hub Library||005.3 KL.D 2017 (Browse shelf(Opens below))||Available||210224|
|Books||The Knowledge Hub Library||005.3 KL.D 2017 (Browse shelf(Opens below))||Available||210225|
|Books||The Knowledge Hub Library||005.3 KL.D 2017 (Browse shelf(Opens below))||Available||210226|
|Books||The Knowledge Hub Library||005.3 KL.D 2017 (Browse shelf(Opens below))||Available||210227|
Includes bibliographical references and index.
Part 1. Foundations of data systems. Reliable, scalable, and maintainable applications -- Data models and query languages -- Storage and retrieval -- Encoding and evolutuion -- Part 2. Distributed data. Replication -- Partitioning -- Transactions -- The trouble with distributed systems -- Consistency and consensus -- Part 3. Derived data. Batch processing -- Stream processing -- The future of data systems.
Data is at the center of many challenges in system design today. Difficult issues need to be figured out, such as scalability, consistency, reliability, efficiency, and mainteinability. In addition, we have an overwhelming variet of tools, including relational databases, NoSQL datastores, stream or batch processors, and message brokers. What are the right choices for your application? How do you make sense of all these buzzwords? In this practical and comprehensive gjuide, author Martin Kleppmann helps you navigate this diverse landscape by examining the pros and cons of various technologies for processing and storing data. Software keeps changing, but the fundamental principles remain the same. With this book, software engineers and architects will learn how to apply those ideas in practice, and how to make full use of data in modern applications.