ISBN-13
9781449373320

Daten stehen heute im Mittelpunkt vieler Herausforderungen beim Systemdesign. Schwierige Probleme müssen geklärt werden, wie z. B. Skalierbarkeit, Konsistenz, Zuverlässigkeit, Effizienz und Wartbarkeit. Darüber hinaus verfügen wir über eine überwältigende Vielfalt an Tools, darunter relationale Datenbanken, NoSQL-Datenspeicher, Stream- oder Batch-Prozessoren und Nachrichtenbroker. Was sind die richtigen Optionen für Ihre Anwendung? Wie verstehen Sie all diese Schlagworte?

In diesem praktischen und umfassenden Leitfaden hilft Ihnen Autor Martin Kleppmann, sich in dieser vielfältigen Landschaft zurechtzufinden, indem er die Vor- und Nachteile verschiedener Technologien zur Verarbeitung und Speicherung von Daten untersucht. Software ändert sich ständig, aber die Grundprinzipien bleiben dieselben. Mit diesem Buch lernen Softwareentwickler und -architekten, wie sie diese Ideen in die Praxis umsetzen und Daten in modernen Anwendungen optimal nutzen können.

Schauen Sie unter die Haube der Systeme, die Sie bereits nutzen, und erfahren Sie, wie Sie diese effektiver nutzen und betreiben können
Treffen Sie fundierte Entscheidungen, indem Sie die Stärken und Schwächen verschiedener Tools identifizieren
Navigieren Sie durch die Kompromisse zwischen Konsistenz, Skalierbarkeit, Fehlertoleranz und Komplexität
Verstehen Sie die verteilte Systemforschung, auf der moderne Datenbanken basieren
Werfen Sie einen Blick hinter die Kulissen großer Online-Dienste und lernen Sie von deren Architekturen


Publication Name
Designing Data-Intensive Applications : The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
Language
English
Publication Year
2017
Subject
Data Modeling & Design, Desktop Applications / Databases
Type
Textbook
Subject Area
Computers
Author
Martin Kleppmann

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 maintainability. In addition, we have an overwhelming variety 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 guide, 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. 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 tools 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 architectures