Kennenlernen von Azure Event Hubs
Azure Event Hubs ist ein nativer Datenstreamingdienst in der Cloud, der Millionen von Ereignissen pro Sekunde mit geringer Latenz von jeder Quelle zu jedem beliebigen Ziel streamen kann. Event Hubs ist mit Apache Kafka kompatibel. So können Sie vorhandene Kafka-Workloads ohne Codeänderungen ausführen.
Mit Event Hubs können Sie Ihr Streaming in Echtzeit erfassen, puffern, speichern und verarbeiten, um umsetzbare Erkenntnisse zu erhalten. Event Hubs verwendet ein partitioniertes Consumermodell. Dies ermöglicht mehreren Anwendungen, den Datenstrom gleichzeitig zu verarbeiten, und Sie können die Geschwindigkeit der Verarbeitung steuern. Azure Event Hubs lässt sich für serverlose Architekturen auch mit Azure Functions integrieren.
Für das AMQP 1.0-Protokoll nach Branchenstandard steht ein weites Ökosystem zur Verfügung. SDKs sind in Sprachen wie .NET, Java, Python und JavaScript verfügbar, sodass Sie mit dem Verarbeiten Ihrer Datenströme in Event Hubs beginnen können. Mit allen unterstützten Clientsprachen wird tiefgreifende Integration gewährleistet.
Wichtige Funktionen
In den folgenden Abschnitten erfahren Sie mehr über die wichtigsten Funktionen von Azure Event Hubs.
Apache Kafka auf Azure Event Hubs
Azure Event Hubs ist eine Multiprotokoll-Ereignisstreaming-Engine, die nativ AMQP-, Apache Kafka- und HTTPS-Protokolle unterstützt. Da Event Hubs Apache Kafka unterstützt, können Sie Kafka-Workloads ohne Codeänderung in Azure Event Hubs übertragen. Sie müssen Ihre eigenen Kafka-Cluster nicht einrichten, konfigurieren oder verwalten oder ein Kafka-as-a-Service-Angebot nutzen, das nicht Azure-nativ ist.
Schemaregistrierung in Event Hubs
Die Azure-Schemaregistrierung in Event Hubs stellt ein zentrales Repository zum Verwalten von Schemata von Ereignisstreaminganwendungen bereit. Die Schemaregistrierung ist bei jedem Event Hubs-Namespace kostenlos dabei. Sie ist mit Ihren Kafka-Anwendungen oder auf Event Hubs-SDKs basierten Anwendungen integriert.
Echtzeitverarbeitung von Streamingereignissen mit Azure Stream Analytics
Event Hubs lässt sich mit Azure Stream Analytics integrieren, um Echtzeitstreamingverarbeitung zu ermöglichen. Mit dem integrierten No-Code-Editor können Sie einen Stream Analytics-Auftrag mithilfe von Drag & Drop entwickeln, ohne Code zu schreiben.
Alternativ können Entwickler die SQL-basierte Stream Analytics-Abfragesprache verwenden, um die Echtzeitdatenstromverarbeitung durchzuführen und eine vielzahl von Funktionen zum Analysieren von Streamingdaten zu nutzen.
Wichtige Begriffe
Event Hubs enthält die folgenden Schlüsselkomponenten:
- Produzentenanwendungen: Diese Anwendungen können Daten mithilfe von Event Hubs-SDKs oder einem beliebigen Kafka-Produzentenclient für einen Event Hub erfassen.
- Namespace: Dies ist der Verwaltungscontainer für einen oder mehrere Event Hubs oder Kafka-Themen. Die Verwaltungsaufgaben wie das Zuordnen der Streamingkapazität, das Konfigurieren der Netzwerksicherheit und das Aktivieren der georedundanten Notfallwiederherstellung werden auf Namespaceebene verarbeitet.
- Event Hubs/Kafka-Thema: In Event Hubs können Sie Ereignisse für einen Event Hub oder ein Kafka-Thema organisieren. Es handelt sich um ein verteiltes Protokoll, das nur Anfügevorgänge unterstützt und aus einer oder mehreren Partitionen bestehen kann.
- Partitionen: Sie werden verwendet, um einen Event Hub zu skalieren. Sie sind wie Fahrspuren auf einer Autobahn. Wenn Sie mehr Streamingdurchsatz benötigen, können Sie weitere Partitionen hinzufügen.
- Verbraucheranwendungen: Diese Anwendungen verbrauchen Daten, indem Sie über das Ereignisprotokoll suchen und den Consumeroffset beibehalten. Consumer können Kafka-Consumerclients oder Event Hubs SDK-Clients sein.
- Consumergruppe: Diese logische Gruppe von Consumerinstanzen liest Daten aus einem Event Hub oder Kafka-Thema. Sie ermöglicht es mehreren Consumern, die gleichen Streamingdaten in einem Event Hub unabhängig in ihrem eigenen Tempo und mit ihren eigenen Offsets zu lesen.