Echtzeit-Datenpipelines mit Apache Kafka entwickeln http://kafka.apache.org/ ist eine Einführung für Entwickler, warum und wie man Apache Kafka verwendet. Apache Kafka ist ein Publish-Subscribe-Nachrichtensystem, das als verteiltes Commit-Log neu gedacht wurde. Kafka ist so konzipiert, dass ein einzelner Cluster als zentrale Datenbasis dient. Ein einzelner Kafka-Broker kann Hunderte von Megabyte an Lese- und Schreibvorgängen pro Sekunde von Tausenden von Clients verarbeiten. Er kann elastisch und transparent ohne Ausfallzeiten erweitert werden. Datenströme werden partitioniert und über einen Cluster von Maschinen verteilt, um Datenströme zu ermöglichen, die größer sind als die Kapazität einer einzelnen Maschine, und um Cluster von koordinierten Verbrauchern zu ermöglichen. Nachrichten werden auf der Festplatte gespeichert und innerhalb des Clusters repliziert, um Datenverlust zu verhindern. Jeder Broker kann Terabytes von Nachrichten verarbeiten. Für den Spring-Nutzer bieten Spring Integration Kafka und Spring XD eine Integration mit Apache Kafka.
Echtzeit-Datenpipelines mit Apache Kafka entwickeln | Knoovi