Project Metamorphosis: Wir präsentieren die Event-Streaming-Plattform der nächsten GenerationMehr Erfahren

Was ist Apache Kafka®?

Apache Kafka ist eine verteilte Event-Streaming-Plattform, die mehrere Billionen Events pro Tag verarbeiten kann. Kafka wurde ursprünglich als Messaging-Queue konzipiert und basiert auf einer Abstraktion eines verteilten Commit-Logs. Seitdem Kafka 2011 bei LinkedIn entwickelt und unter eine Open-Source-Lizenz gestellt wurde, hat es sich schnell von einer Messaging-Queue zu einer vollwertigen Event-Streaming-Plattform entwickelt.

Confluent wurde von den ursprünglichen Entwicklern von Apache Kafka gegründet und bietet mit Confluent Platform die vollständigste Version von Kafka. Confluent Platform verbessert Kafka mit zusätzlichen Open-Source- und kommerziellen Funktionen, die entwickelt wurden, um das Streamen von . Daten in Produktion für Betreiber und Entwickler optimal zu gestalten.

Einsatzmöglichkeiten von Apache Kafka

Tausende Unternehmen basieren auf Kafka

Welchen Mehrwert bietet Kafka für Sie?

Übertragen und Abrufen

Alles beginnt mit dem einfachen, unveränderlichen Commit-Log. Diesen können Sie abonnieren und Daten auf beliebig vielen Systemen oder Echtzeit-Anwendungen veröffentlichen. Im Gegensatz zu Nachrichten-Queues ist Kafka ein in hohem Maße skalierbares und fehlertolerantes verteiltes System. So kann es für Anwendungen wie die Verwaltung von Fahrgast- und Fahrerzuordnung bei Uber, Echtzeit-Analytics und vorausschauende Wartung für Smart Home von British Gas und die Erbringung zahlreicher Echtzeit-Dienste überall auf LinkedIn eingesetzt werden. Diese Performance ist unerreicht und eignet es sich ideal für die Skalierung von einer einzigen App bis hin zur unternehmensweiten Verwendung.

Speichern

Durch die Abstraktion eines verteilten Commit-Logs, wie es üblicherweise in verteilten Datenbanken zu finden ist, bietet Apache Kafka dauerhafte Speichermöglichkeiten. Kafka kann als zuverlässige Informationsquelle genutzt werden, da hier Daten auf mehrere Nodes verteilt werden können. So kann eine Bereitstellung mit hoher Verfügbarkeit in einem einzigen Rechenzentrum oder über mehrere Verfügbarkeitsbereiche hinweg erzielt werden.

Verarbeitung

Eine Event-Streaming-Plattform würde ihrem Namen nicht gerecht, wenn die Daten nicht direkt bei ihrem Eintreffen verarbeitet werden könnten. Die Streams API in Apache Kafka ist eine leistungsstarke, schlanke Bibliothek, die eine On-the-fly-Verarbeitung ermöglicht. Hier können Sie aggregieren, Windowing-Parameter erstellen, Daten innerhalb eines Streams zusammenführen und vieles mehr. Doch das ist noch nicht alles: Sie wurde als Java-Anwendung auf Kafka erstellt, sodass Ihr Workflow unbeeinträchtigt bleibt und Sie sich nicht um zusätzliche Cluster kümmern müssen.

Kafka: The Definitive Guide

Kafka, die verteilte Publish-Subscribe-Queue für die Handhabung von Echtzeit-Daten-Feeds, birgt ein immenses Potenzial, das es auszuschöpfen gilt. Dieses umfangreiche Buch vermittelt Ihnen ein fundiertes Verständnis davon, wie Kafka aufgebaut ist und funktioniert.

Das ideale Streaming-Toolset

Apache Kafka ist bei Entwicklern beliebt, da es sich schnell erlernen lässt und eine leistungsstarke Event-Streaming-Plattform mit 4 APIs bietet: Producer, Consumer, Streams und Connect.

Entwickler gehen häufig zunächst von einem einzigen Anwendungsfall aus. Dabei könnte z. B. Apache Kafka als Zwischenspeicher für Nachrichten zum Schutz einer veraltete Datenbank, die mit den heutigen Workloads nicht Schritt halten kann, eingesetzt werden. Oder aber man könnte eine solche Datenbank über die Connect API mit einer passenden Such-Indizierungs-Engine synchronisieren, damit Daten direkt bei deren Eintreffen mit Streams API verarbeitet und aggregiert sofort wieder an Ihre Anwendung zurückgeschickt werden können.

Kurz gesagt: Apache Kafka und seine APIs machen die Erstellung datengestützter Apps und die Verwaltung komplexer Backend-Systeme ganz einfach. Mit Kafka können Sie ganz beruhigt darauf vertrauen, dass Ihre Daten stets fehlertolerant, wiedergabefähig und in Echtzeit verfügbar sind. Jetzt können Sie über eine einzige Event-Streaming-Plattform Echtzeit-Daten verarbeiten, speichern und mit Ihren Anwendungen und Systemen verknüpfen – und so Ihre Entwicklung beschleunigen.