Schweitzer Fachinformationen
Wenn es um professionelles Wissen geht, ist Schweitzer Fachinformationen wegweisend. Kunden aus Recht und Beratung sowie Unternehmen, öffentliche Verwaltungen und Bibliotheken erhalten komplette Lösungen zum Beschaffen, Verwalten und Nutzen von digitalen und gedruckten Medien.
Dieses Kapitel beinhaltet:
Was Apache Kafka ist und wofür es verwendet wird
Wie Apache Kafka in Unternehmens-Architekturen integriert wird
Architekturübersicht von Apache Kafka
Wie man Apache Kafka betreibt und verwendet
Im ersten Kapitel werden wir uns mit den Grundlagen von Apache Kafka beschäftigen. Wir werden lernen, was Apache Kafka ist und wo es eingesetzt werden kann. Noch wichtiger ist, dass wir uns ansehen werden, wie Apache Kafka im Kontext ganzer Unternehmens-Architekturen betrachtet werden kann. Wir werden die grundlegenden Komponenten von Apache Kafka kennenlernen und ihren Zweck verstehen. Zu guter Letzt werden wir herausfinden, was erforderlich ist, um Apache Kafka in Bezug auf Hardware, Tools oder Programmiersprachen zu verwenden.
Unsere Welt geschieht in Echtzeit. Wenn wir einen Kauf tätigen, erwarten wir eine sofortige Bestätigung. Wenn wir Pakete bestellen, erwarten wir eine Echtzeitverfolgung. Wenn unsere Kreditkarte verdächtig verwendet wird, möchten wir es sofort wissen - nicht erst morgen. Als Kunden haben wir uns daran gewöhnt, dass Unternehmen Daten so schnell verarbeiten und darauf reagieren, wie das Leben passiert.
Diese Erwartung an Echtzeitverarbeitung, kombiniert mit einer explosionsartigen Zunahme des Datenvolumens - von IoT-Sensoren, die kontinuierlich Daten senden, bis hin zu Kunden, die über zahlreiche digitale Touchpoints interagieren -, stellt IT-Teams vor enorme Herausforderungen. Traditionelle, batch-orientierte Architekturen, die für die Verarbeitung am Ende des Tages konzipiert wurden, haben Schwierigkeiten, sich an diese neue Realität anzupassen, in der jede Sekunde zählt.
Besonders für etablierte Unternehmen mit komplexen Altsystemen ist es eine entscheidende Herausforderung, ihre Architektur so zu transformieren, dass sie Echtzeit-Datenströme verarbeiten kann, ohne die Systemzuverlässigkeit zu gefährden. Während monolithische Anwendungen in verteilte Services aufgebrochen werden, steigt die Komplexität erheblich. Teams müssen ihre Services unabhängig weiterentwickeln und gleichzeitig einen zuverlässigen Datenfluss im gesamten Unternehmen sicherstellen. Wie bleibt die Systemstabilität erhalten, wenn Dutzende von Services miteinander kommunizieren müssen? Wie können Teams Änderungen einführen, ohne andere Services zu beeinträchtigen? Und wie lassen sich riesige Datenströme zwischen Systemen handhaben, ohne ein unübersichtliches Netz aus Punkt-zu-Punkt-Integrationen zu erzeugen?
Apache Kafka bietet ein Architekturmodell, das diese Herausforderungen löst, indem es als zentrales Nervensystem für Daten dient. Es ist kein Zufall, dass laut der Kafka-Community über 80 % der Fortune-100-Unternehmen auf Kafka setzen, um genau diese Probleme zu bewältigen. Von der unabhängigen Weiterentwicklung von Services über die Vermeidung systemweiter Ausfälle durch asynchrone Kommunikation bis hin zur Transformation von batch-orientierten Systemen in Echtzeit-Datenströme - Kafka ist zum Rückgrat moderner verteilter Architekturen geworden.
Apache Kafka ist eine leistungsstarke, verteilte open-source Streaming-Plattform, die grundlegend verändert, wie Unternehmen ihre Datenströme verwalten. Im Kern fungiert Kafka als ein persistentes verteiltes Log aller Datenereignisse eines Unternehmens. Man kann es sich als eine zentrale Datendrehscheibe vorstellen, auf der jede bedeutende Information - von Kundeninteraktionen bis hin zu Systemstatusänderungen - zuverlässig gespeichert und nahezu in Echtzeit verarbeitet wird. Dieser Architekturansatz bietet mehrere entscheidende Vorteile:
Erstens ermöglicht Kafka durch die Persistenz von Datenströmen sowohl Echtzeitverarbeitung als auch eine zuverlässige Speicherung von Daten. Wenn ein Consumer-System ausfällt, kann es nahtlos dort weitermachen, wo es aufgehört hat. Wenn ein neuer Service historische Daten benötigt, kann er vergangene Ereignisse genauso einfach verarbeiten wie aktuelle.
Zweitens skaliert Kafka dank seiner verteilten Architektur horizontal, um enorme Datenmengen zu bewältigen und gleichzeitig fehlertolerant zu bleiben. Ein einzelnes Kafka-Cluster kann Millionen von Ereignissen pro Sekunde verarbeiten und stellt sicher, dass keine Daten verloren gehen - selbst bei Teilausfällen des Systems.
Diese Fähigkeiten haben Kafka in zahlreichen Branchen unverzichtbar gemacht. Finanzinstitute nutzen es, um Millionen von Transaktionen in Echtzeit zu verarbeiten und gleichzeitig sicherzustellen, dass alle Systeme - von der Betrugserkennung bis zu Kundenbenachrichtigungen - synchron bleiben. Hersteller streamen Sensordaten von Tausenden von IoT-Geräten über Kafka, um vorausschauende Wartung und Echtzeitüberwachung zu ermöglichen. Einzelhändler setzen es für Lagermanagement und Auftragsabwicklung ein.
Apache Kafka realisiert dies durch ein Publish-Subscribe-Modell - oder, wie es in der Kafka-Community genannt wird, ein Producer-Consumer-Modell. Producer senden Nachrichten an bestimmte Topics, und Consumer verarbeiten diese Nachrichten je nach Bedarf. Doch was Kafka von herkömmlichen Messaging-Systemen unterscheidet, ist seine Persistenzschicht: Daten, die in Kafka geschrieben werden, können über Stunden, Tage oder sogar Monate gespeichert und mehrfach gelesen werden.
Diese Persistenz, kombiniert mit Kafkas verteilter Architektur und seinem umfangreichen Ökosystem aus Tools wie Kafka Connect und Kafka Streams, hat Kafka weit über seine Ursprünge als hoch performantes Messaging-System bei LinkedIn hinausgehoben. Heute fungiert es als das zentrale Nervensystem für Unternehmensdaten.
Dieses Buch richtet sich an eine breite Zielgruppe von IT-Fachkräften, die ein fundiertes Verständnis von Apache Kafka und seiner Integration in bestehende IT-Infrastrukturen erlangen möchten. Unabhängig davon, ob die Lesenden in der IT-Architektur, Systemadministration, Entwicklung oder im Data Engineering tätig sind - dieses Buch bietet einen umfassenden Einstieg in Kafka.
Der Fokus dieses Buches liegt nicht auf einem Entwicklungshandbuch mit Dutzenden Java-Beispielen, sondern auf praxisnahen Einblicken und konkreten Anleitungen für den effektiven Einsatz von Kafka in verschiedenen Projekten. Ziel ist es, ein fundiertes Verständnis zu vermitteln, um Kafka für Datenstreaming und Echtzeitverarbeitung in unterschiedlichen IT-Umgebungen erfolgreich zu nutzen.
Was meinen wir, wenn wir sagen, dass Kafka das zentrale Nervensystem für Daten sein kann? Die Vision ist, dass jedes Ereignis (wie in Bild 1.1 dargestellt), ein signifikantes Vorkommnis oder Vorfall innerhalb eines Unternehmens, das Daten erzeugt und wichtige Informationen enthält, in Kafka gespeichert wird. Im Kontext von Unternehmenssystemen und Kafka stellt ein Ereignis typischerweise verschiedene Aktivitäten, Änderungen oder Transaktionen dar, die in verschiedenen Bereichen der Organisation stattfinden, wie zum Beispiel Benutzerinteraktionen, Systemaktualisierungen, Finanztransaktionen oder andere relevante Geschäftsoperationen.
Im Kontext von ereignisgesteuerten Architekturen (Event Driven Architectures, EDA) und Kafka bezeichnet ein Ereignis oft ein Datenpaket, das die Details eines bestimmten Vorfalls, wie zum Beispiel einen Kauf oder eine Benutzeranmeldung, zusammenfasst und eine strukturierte Darstellung dieser Informationen bietet. Diese Ereignisse werden normalerweise von verschiedenen Komponenten oder Anwendungen im Unternehmen erzeugt und dann in einem Kafka-Topic veröffentlicht. Kafka-Topics dienen dazu, Datenströme zu organisieren. Anschließend können andere Systeme oder Anwendungen dieses Topic abonnieren, um die Ereignisse zu konsumieren und weiterzuverarbeiten, was den Echtzeit-Datenfluss und die Kommunikation zwischen verschiedenen Teilen der Unternehmens-Architektur ermöglicht.
Bild 1.1 Kafka als das zentrale Nervensystem für Daten in einem Unternehmen. Jedes Ereignis, das im Unternehmen stattfindet, wird in Kafka gespeichert. Andere Dienste können auf diese Ereignisse asynchron reagieren und sie weiterverarbeiten.
In vielen Unternehmen gibt es eine wachsende Trennung zwischen Legacy-Systemen, die für die aktuellen Geschäftsprozesse und Modelle unerlässlich sind, und neuen Systemen, die mit modernen Entwicklungsmethoden erstellt wurden. Die neue Welt bezieht sich auf den Ansatz, innovative Dienste und Lösungen mithilfe agiler Methoden zu entwickeln. Während Kafka nicht unbedingt als Schnittstelle zwischen alten und neuen Systemen...
Dateiformat: ePUBKopierschutz: Wasserzeichen-DRM (Digital Rights Management)
Systemvoraussetzungen:
Das Dateiformat ePUB ist sehr gut für Romane und Sachbücher geeignet - also für „fließenden” Text ohne komplexes Layout. Bei E-Readern oder Smartphones passt sich der Zeilen- und Seitenumbruch automatisch den kleinen Displays an. Mit Wasserzeichen-DRM wird hier ein „weicher” Kopierschutz verwendet. Daher ist technisch zwar alles möglich – sogar eine unzulässige Weitergabe. Aber an sichtbaren und unsichtbaren Stellen wird der Käufer des E-Books als Wasserzeichen hinterlegt, sodass im Falle eines Missbrauchs die Spur zurückverfolgt werden kann.
Weitere Informationen finden Sie in unserer E-Book Hilfe.