Mein IBM Anmelden
Was ist Event Streaming?

Was ist Event Streaming?

Entdecken Sie die Event-Streaming-Lösung von IBM Für KI-Updates anmelden
Illustration mit Collage aus Piktogrammen von Ausrüstung, Roboterarm, Mobiltelefon

 

Veröffentlicht: 30. April 2024
Mitwirkende: Chrystal R. China, Michael Goodwin

Was ist Event Streaming?

Was ist Event Streaming?

Event Streaming ist die Praxis, Echtzeitdaten von Anwendungen, Datenbanken und IoT-Geräten zu erfassen und sie zur sofortigen Verarbeitung und Speicherung oder für Analysen und Analyseberichte in Echtzeit an verschiedene Ziele zu übertragen.

Als Schlüsselfunktion der Ereignisstromverarbeitung (Event Stream Processing, ESP) ermöglicht Event Streaming IT-Infrastrukturen die Verarbeitung großer, kontinuierlicher Ereignisströme, indem Daten verarbeitet werden, wenn das Ereignis oder die Änderung eintritt.

Event Streaming dient oft als Ergänzung zur Batch-Verarbeitung, die auf große, statische Datensätze (oder „Data at Rest“) angewendet wird. Statt Daten in Batches zu verarbeiten, werden beim Event Streaming jedoch einzelne Datenpunkte verarbeitet, sobald sie auftauchen, sodass die Software innerhalb der Architektur Datenströme („Data in Motion“) in Echtzeit interpretieren und darauf reagieren kann.

Leistungsstarke Event-Streaming-Services können eine Reihe einfacher und komplexer Aufgaben übernehmen, von der Versendung von Benachrichtigungen, wenn sich Lagerbestände oder Produktpreise ändern, bis hin zum Aufbau von Echtzeit-Maschinenlernmodellen, die verdächtige Benutzeraktivitäten erkennen. Selbst bei der Batch-Verarbeitung kann das Event Streaming der Datenanalyse mehr Tiefe verleihen, indem es Ereignisse mit ihren jeweiligen Zeitstempeln verknüpft und historische Trends identifiziert.

Buchen Sie eine Live-Demo

Erfahren Sie, wie IBM Event Automation Ihnen helfen kann, Ereignisse zu nutzen, indem es Geschäfts- und IT-Anwendern ermöglicht, Situationen zu erkennen, in Echtzeit zu handeln, Entscheidungen zu automatisieren und das Umsatzpotenzial zu maximieren.

Ähnliche Inhalte IBM Newsletter abonnieren
Was ist ein Event?

Was ist ein Event?

Beim Event Streaming geht es um den unbegrenzten, sequentiellen Fluss von Datensätzen in Echtzeit, genannt „Events“, grundlegende Datenstrukturen, die jedes Ereignis im System oder in der Umgebung aufzeichnen. Es ist ein Begriff, der sich im Wesentlichen auf jeden Datenpunkt im System bezieht. Daher ist ein „Stream“ (auch Datenstrom oder Streaming-Daten genannt) die kontinuierliche Bereitstellung dieser Ereignisse.

Jedes Ereignis umfasst in der Regel einen Schlüssel, der das Ereignis oder die Entität, auf die es sich bezieht, identifiziert, einen Wert, der die eigentlichen Daten des Ereignisses enthält, einen Zeitstempel, der angibt, wann das Ereignis aufgetreten ist oder aufgezeichnet wurde, und manchmal Metadaten über die Datenquelle, die Schemaversion oder ein anderes Attribut.

Mit Hilfe spezialisierter Stream-Processing-Engines können Ereignisse innerhalb eines Streams einige verschiedene Prozesse durchlaufen. „Aggregationen“ führen Datenberechnungen durch, wie z. B. Mittelwerte, Summen und Standardabweichungen. Durch „Ingestion“ werden Streaming-Daten in Datenbanken aufgenommen. Die Analyseverarbeitung nutzt Muster in Streaming-Daten, um zukünftige Ereignisse vorherzusagen, und die Anreicherungsverarbeitung kombiniert Datenpunkte mit anderen Datenquellen, um Kontext und Bedeutung zu schaffen.

Ereignisse sind oft mit Geschäftsvorgängen oder Prozessen der Benutzernavigation verbunden und lösen in der Regel eine andere Aktion, einen Prozess oder eine Reihe von Ereignissen aus. Nehmen wir als Beispiel das Online-Banking.

Wenn ein Benutzer auf „Transfer“ klickt, um Geld von einem Bankkonto an ein anderes zu senden, werden die Gelder vom Konto des Absenders abgehoben und dem Bankkonto des Empfängers hinzugefügt, E-Mail- oder SMS-Benachrichtigungen werden an eine der beiden Parteien (oder an beide) gesendet, und falls erforderlich, werden Sicherheits- und Betrugspräventionsprotokolle bereitgestellt.

Schlüsselkomponenten des Event Streaming

Schlüsselkomponenten des Event Streaming

Events sind natürlich die zentrale Komponente des Event Streaming, aber eine Reihe anderer Komponenten ermöglichen es den Streaming-Services, Events so schnell und effektiv zu verarbeiten, wie sie es tun. Zu den weiteren wichtigen Komponenten gehören:

Broker

Broker oder Nachrichtenbroker sind die Server, auf denen Event-Streaming-Plattformen ausgeführt werden. Message Broker ermöglichen es Anwendungen, Systemen und Services, miteinander zu kommunizieren und Informationen auszutauschen, indem sie Nachrichten zwischen formalen Messaging-Protokollen konvertieren. So können voneinander abhängige Services direkt miteinander „sprechen“, auch wenn sie in unterschiedlichen Sprachen (z. B. Java oder Python) geschrieben oder auf unterschiedlichen Plattformen implementiert sind. Es erleichtert auch die Entkopplung von Prozessen und Services innerhalb von Systemen.

Broker können Nachrichten validieren, speichern, weiterleiten und an die entsprechenden Ziele zustellen. In verteilten Event-Streaming-Systemen sorgen Broker für geringe Latenzen und hohe Verfügbarkeit, indem sie Ereignisse über mehrere Knotenpunkte hinweg replizieren. Broker können auch Cluster bilden – Gruppen von Brokern, die zusammenarbeiten, um Lastausgleich und die Skalierbarkeit zu erleichtern.

Themen

Themen sind Kategorisierungen oder Feed-Namen, unter denen Ereignisse veröffentlicht werden und die eine Möglichkeit bieten, Ereignisse innerhalb der Plattform zu organisieren und zu filtern. Sie fungieren als „Subjekt“ für Ereignisse und ermöglichen es den Verbrauchern, Themen zu abonnieren und nur relevante Ereignisse zu erhalten.

Partitionen

Themen können weiter in Partitionen unterteilt werden, so dass mehrere Verbraucher gleichzeitig aus einem Thema lesen können, ohne die Reihenfolge der einzelnen Partitionen zu stören.

Offsets

Ein Offset ist ein eindeutiger Bezeichner für jedes Ereignis innerhalb einer Partition, der die Position eines Ereignisses innerhalb der Sequenz markiert. Verbraucher verwenden Offsets, um die von ihnen verarbeiteten Ereignisse zu organisieren. Wenn ein Verbraucher beispielsweise die Verbindung zu einem Ereignis unterbricht und später wieder aufnimmt, kann er die Verarbeitung ab dem letzten bekannten Offset fortsetzen.

Wie funktioniert Event Streaming?

Wie funktioniert Event Streaming?

In Anbetracht der zunehmenden Datenmenge und des daraus resultierenden hohen Datenaufkommens ist das Event Streaming eine wesentliche Komponente moderner Datenarchitekturen, insbesondere in Umgebungen, die blitzschnelle Entscheidungsfindungsmöglichkeiten erfordern, oder in Unternehmen, die ihre Entscheidungsprozesse automatisieren möchten.

So verwalten Event-Streaming-Services Ereignisdaten:

  1. Generierung von Ereignissen. Event Streaming beginnt, wenn Hersteller (z. B.Microservices, Backend-Systeme, IoT-Ökosysteme oder ereignisgesteuerte APIs) Ereignisse an die Event-Streaming-Plattform senden.

  2. Veröffentlichung von Ereignissen. Mithilfe von Client-Bibliotheken veröffentlichen die Produzenten das Ereignis in einem bestimmten Thema innerhalb der Plattform. Ab diesem Zeitpunkt sind sie für die Konsumenten (die Anwendungen und Services, die das Thema abonnieren) verfügbar.   

  3. Speicherung von Ereignissen. Die Plattform speichert die Ereignisse für einen bestimmten Zeitraum oder bis sie verbraucht werden, wobei Broker die Speicherung und den Abruf der Ereignisse verwalten.

  4. Verbrauch von Ereignissen. Verbraucher verarbeiten Ereignisdaten, um andere Ereignisse auszulösen. Je nach Zweck oder Konfiguration können sie auf Ereignisse sofort reagieren, wenn sie eintreffen (Echtzeitverarbeitung), sie für eine spätere Verarbeitung speichern oder sie für eine Batch-Verarbeitung kompilieren. Die Verbraucher verfolgen auch ihre Position in der Datenpipeline, indem sie Offsets verwenden, sodass sie im Falle eines Fehlers oder Neustarts die Verarbeitung an der Stelle fortsetzen können, an der sie aufgehört haben.

  5. Durchführung von Ereignissen. Der Event Broker liefert Ereignisse an alle abonnierten Verbraucher. Die Zustellungssemantik kann die „mindestens einmalige“ Zustellung (bei der die Zustellung von Ereignissen garantiert ist, diese aber doppelt vorkommen können), die „genau einmalige“ Zustellung (bei der jedes Ereignis nur einmal zugestellt wird) oder eine andere Art von Semantik umfassen.

  6. Ereignisverarbeitung. Sobald das erste Ereignis verarbeitet und bereitgestellt wurde, werden die Eventdaten für mehrere nachgelagerte Aktionen verarbeitet, einschließlich der Transformation der Daten, ihrer Aggregation und der Auslösung komplexer Workflows zur Ereignisverarbeitung (CEP).
Event-Streaming-Funktionen

Event-Streaming-Funktionen

Neben Standard-Streaming und -Verarbeitung ermöglichen Event-Streaming-Plattformen (wie Amazon Kinesis, Google Pub/Sub, Azure Event Hubs und IBM Event Automation, die die Verarbeitungsleistung der Open-Source-Plattform Apache Kafka nutzt) eine Reihe von Streaming-Verfahren, die die Funktionalität verbessern.

Exactly-Once-Verarbeitung

Die Exactly-Once-Bereitstellungs-Semantik stellt sicher, dass jedes Ereignis in einem Stream genau einmal verarbeitet wird. Dies ist eine wichtige Funktion, um doppelte und verlorene Stream-Ereignisse zu vermeiden. Die meisten Event-Streaming-Systeme enthalten Mechanismen, die unabhängig von Ausfällen an anderen Stellen im System eine Exactly-Once-Semantik bieten.

Backpressure

Wenn nachgelagerte Komponenten nicht mit der eingehenden Ereignisrate mithalten können, verhindert der Gegendruck (Backpressure), dass die Streams das System überwältigen. Mit Backpressure, einem Mechanismus zur Kontrolle des Datenflusses, können Konsumenten den Produzenten signalisieren, die Datenproduktion zu drosseln oder zu stoppen, wenn sie mit der Datenverarbeitung überfordert sind oder mit den eingehenden Ereignissen nicht Schritt halten können.

Dieser Prozess ermöglicht es Systemen, Workloads zu bewältigen, indem eingehende Ereignisse gepuffert oder verworfen werden – anstatt das gesamte System zu unterbrechen –, sodass die Ereignisverarbeitung auch bei schwankenden Workloads stabil bleibt.

Verbrauchergruppen

Event-Konsumenten arbeiten oft als Teil einer Verbrauchergruppe, um den Event-Konsum zu beschleunigen. Jedem Verbraucher in einer Verbrauchergruppe wird eine Teilmenge von Partitionen zur Verarbeitung zugewiesen, wodurch der Verbrauch für mehr Effizienz parallelisiert wird. Wenn ein Verbraucher innerhalb der Gruppe ausfällt oder hinzugefügt oder entfernt werden muss, kann die Plattform Partitionen dynamisch neu zuweisen, um das Gleichgewicht und die Fehlertoleranz aufrechtzuerhalten.

Wasserzeichen

Event Streaming bedeutet oft eine zeitkritische Verarbeitung von Daten. Wasserzeichen ermöglichen die Verfolgung des Fortschritts (unter Verwendung der Ereigniszeit) in Stream-Processing-Systemen. Sie erzwingen eine Vollständigkeitsschwelle, die angibt, wann das System die Ereignisdaten als vollständig verarbeitet betrachten kann. Wasserzeichen können auch nützlich sein, wenn es darum geht, die Genauigkeit bei der zeitbasierten Verarbeitung zu gewährleisten und Ereignisse abzugleichen, die nicht in Ordnung sind.

Datenspeicherung und -verdichtung

Die meisten Event-Streaming-Plattformen bieten anpassbare Datenaufbewahrungsrichtlinien, mit denen Entwickler steuern können, wie lange Ereignisse für den Konsum verfügbar sind. Die Datenverdichtung ist jedoch ein Prozess, bei dem redundante oder veraltete Daten aus den Themen entfernt werden, um den Speicherplatzbedarf gering zu halten und gleichzeitig die wesentlichen Daten zu erhalten.

Auch hier ist anzumerken, dass Standard-Streaming-Architekturen in der Regel Ereignisproduzenten, Ereignisbroker und Konsumenten entkoppeln, so dass die Komponenten unabhängig voneinander skaliert und gewartet werden können.  

Anwendungsfälle für Event Streaming

Event Streaming ist ein leistungsfähiges Konzept, das es Unternehmen ermöglicht, Daten zu nutzen, sobald sie generiert werden, und so reaktionsschnellere und intelligentere Systeme zu schaffen. Mit der Zunahme der datengesteuerten Entscheidungsfindung wird das Event Streaming zu einer immer wichtigeren Komponente in modernen Software-Architekturen.

Event-Streaming-Technologien können in verschiedenen Geschäftsbereichen eingesetzt werden, darunter:

Bankwesen und Finanzdienstleistungen

Finanzinstitute können Event-Streaming-Services nutzen, um Marktdaten in Echtzeit zu verarbeiten und algorithmische Handelssysteme in die Lage zu versetzen, sekundengenaue Entscheidungen auf der Grundlage aktueller Marktbedingungen zu treffen. Die Echtzeit-Überwachungsfunktionen von Event Streaming helfen Instituten außerdem, Betrugs- und Sicherheitsrisiken schnell zu erkennen und zu bekämpfen.

Herstellung

Event Streaming kann die Optimierung der Lieferkette erleichtern, indem es Herstellern ermöglicht, Materialien und Produkte auf ihrem Weg durch die Lieferkette zu verfolgen, um Engpässe und Prozessineffizienzen zu erkennen. Darüber hinaus können Manager durch Streaming von Daten von IoT/IIoT-Sensoren an Maschinen vorhersagen, wann und warum Geräte ausfallen könnten, und vorbeugende Wartung oder vorausschauende Wartung durchführen, um ungeplante Ausfallzeiten zu vermeiden.

Gaming und Unterhaltung

Online-Gaming-Plattformen können Event-Streaming-Services nutzen, um Aktionen von Spielern und Änderungen des Spielzustands zu verfolgen. Diese können zur Spielanalyse, zur Durchsetzung von Anti-Betrugsrichtlinien und zur Steigerung des Spieler-Engagements genutzt werden. Streaming-Plattformen können Ereignisdaten nutzen, um personalisierte Inhaltsempfehlungen für die Nutzer bereitzustellen und eine maßgeschneiderte Customer Experience zu schaffen.

Transport und Logistik

Event Streaming kann dazu verwendet werden, den Standort und den Status von Fahrzeugen zu verfolgen, was eine Echtzeit-Routenplanung auf der Grundlage von Verkehrsbedingungen, Lieferplänen und Fahrzeugleistung ermöglicht. Logistikunternehmen können auf ähnliche Weise Ereignisdaten von Scannern und GPS-Trackern nutzen, um Kunden in Echtzeit über den Status ihrer E-Commerce-Lieferungen zu informieren.

Verwendung in ereignisgesteuerten Architekturen und anderen Mustern

Verwendung in ereignisgesteuerten Architekturen und anderen Mustern

Abgesehen von bestimmten Branchen kann Event Streaming auch nützlich sein, wenn es in Verbindung mit anderen Technologien und Architekturen eingesetzt wird. So wird Event Streaming manchmal mit Mustern wie Event Sourcing und Command Query Responsibility Segregation (CQRS) in Verbindung gebracht.

Event Sourcing ist ein architektonisches Muster, bei dem Änderungen am Zustand der Anwendung als eine Folge von Ereignissen gespeichert werden. In Verbindung mit Event Streams ermöglicht das Event Sourcing dem Streaming-System, diese Ereignisse wiederzugeben, um den Zustand einer Entität zu einem beliebigen Zeitpunkt zu rekonstruieren oder um andere Komponenten des Systems zu steuern.

Bei einem CQRS-Architekturmuster ist das System in zwei verschiedene Modelle aufgeteilt: eines, das Befehle verarbeitet (Schreiben) und eines, das Abfragen verarbeitet (Lesen). Event Streaming kann in CQRS verwendet werden, um Änderungen vom Schreibmodell in das Lesemodell in Echtzeit zu übertragen und so eine asynchrone Integration zwischen den beiden Modellen zu ermöglichen.

Event Streaming ist auch eine grundlegende Technologie für den Aufbau ereignisgesteuerter Architekturen.

Eine ereignisgesteuerte Architektur ermöglicht es lose gekoppelten Komponenten, über Ereignisse zu kommunizieren. Anstatt jedoch Ströme von Ereignissen an einen Broker zu veröffentlichen, wird ein einziges Ereignis veröffentlicht, das eine andere Anwendung oder ein anderer Service nutzen kann, um seinerseits Aktionen durchzuführen. Die In-Stream-Verarbeitungsleistung von ereignisgesteuerten Architekturen – in Verbindung mit Event-Streaming-Funktionen – kann Unternehmen in die Lage versetzen, auf Daten in Bewegung zu reagieren und schnelle Entscheidungen auf der Grundlage aller aktuellen und historischen Daten zu treffen.

In den letzten Jahren haben Cloud-Anbieter (einschließlich IBM Cloud) damit begonnen, die Prinzipien des Event Streaming als Services anzubieten. Event-Streaming-as-a-Service macht es für Unternehmen einfacher, Event-Streaming einzuführen, ohne die gesamte zugrunde liegende Infrastruktur zu verwalten. Das erweitert die Anwendungsfälle von Event-Streaming noch weiter.

Weiterführende Produkte

Weiterführende Produkte

IBM Event Automation

IBM® Event Automation ist eine vollständig modulare Lösung und ermöglicht es Unternehmen, ihre ereignisgesteuerten Aktivitäten zu beschleunigen – unabhängig davon, an welchem Punkt ihrer Journey sie stehen. Die Funktionen für Event Streams, Event Endpoint Management und Event Processing bilden die Grundlage für eine ereignisgesteuerte Architektur, mit der sich der Wert von Ereignissen erschließen lässt.

Erkunden Sie IBM Event Automation

IBM Cloud Pak for Integration

IBM Cloud Pak® for Integration nutzt die auf Open Source Apache Kafka basierende Event-Streaming-Plattform IBM® Event Streams von IBM, um Sie bei der Entwicklung intelligenter Anwendungen zu unterstützen, die auf Ereignisse reagieren können, sobald sie eintreten. Bewältigen Sie geschäftskritische Workloads durch verbesserte Systemkonnektivität, umfangreiche Bereitstellungs- und Betriebsfunktionen und eine ereignisgesteuerte Architekturkompetenz.

IBM Cloud Pak for Integration erkunden
Mit IBM App Connect auf Ereignisse reagieren

Koordinieren Sie Folgemaßnahmen, um sofort auf neue Ereignisse zu reagieren. App Connect unterstützt ereignisgesteuerte Architekturen und kann Polling-Mechanismen nutzen, um mit Systemen ohne eine solche Architektur zu arbeiten. Konfigurieren Sie Abläufe, die Aufgaben automatisieren und bedingte Logik anwenden, um Entscheidungen zu optimieren und auf sich wandelnde Kundenanforderungen zu reagieren.

IBM APP Connect ansehen

Ressourcen

Ressourcen

Ereignisgesteuerte Architektur vs. Event Streaming

Was ist der Unterschied, wie können Sie davon profitieren und welches ist die richtige Wahl für Ihr Unternehmen?

Apache Kafka und Apache Flink: eine traumhafte Open-Source-Lösung

Die Stream-Verarbeitung ist das Herzstück von Echtzeitdaten. Es ermöglicht Ihrem Unternehmen, kontinuierliche Datenströme aufzunehmen, sobald sie anfallen, und sie zur Analyse in den Vordergrund zu stellen, damit Sie mit den ständigen Veränderungen Schritt halten können.

Nutzung einer ereignisgesteuerten Architektur

Unternehmen, die sich stärker an Ereignissen orientieren, können sich besser von ihren Mitbewerbern abheben und letztlich ihre Umsätze und Gewinne steigern.

Erfahren Sie, wie die AsyncAPI-Spezifikation Kafka-Topics beschreiben und dokumentieren kann.

KI und Ereignisverarbeitung in Echtzeit

Durch die Nutzung von KI für die Ereignisverarbeitung in Echtzeit sind Unternehmen in der Lage, unabhängige Ereignisse in Beziehung miteinander zu setzen, um neue Trends, Bedrohungen und Chancen zu erkennen und darauf zu reagieren.

Was ist Datenverwaltung?

Unter Datenmanagement versteht man die Praxis der Aufnahme, Verarbeitung, Sicherung und Speicherung von Unternehmensdaten, die dann für strategische Entscheidungen zur Verbesserung der Geschäftsergebnisse genutzt werden.

Machen Sie den nächsten Schritt

IBM Event Automation ist eine vollständig modulare Lösung und ermöglicht es Unternehmen, ihre ereignisgesteuerten Aktivitäten zu beschleunigen – unabhängig davon, an welchem Punkt ihrer Journey sie stehen. Es bietet Funktionen für die Verteilung, Erkennung und Verarbeitung von Ereignissen in einer intuitiven Benutzeroberfläche, sodass sowohl Geschäfts- als auch IT-Benutzer die Ereignisse nutzen und in Echtzeit reagieren können.

Erkunden Sie Event Automation Buchen Sie eine Live-Demo