Home

Datenströmen

Datenströme sind Sequenzen von Datenelementen, die von Quellen wie Sensoren, Protokollen, Transaktionen oder Benutzungsereignissen erzeugt und zeitlich geordnet weitergegeben werden. Sie unterscheiden sich von statischen Datensätzen dadurch, dass neue Daten kontinuierlich ankommen und die Gesamtheit der Daten potenziell unbegrenzt ist. Typische Merkmale sind das zeitliche Verhalten der Daten (Event Time versus Processing Time), die Reihenfolge der Elemente sowie die Möglichkeit, verspätete Daten zu empfangen.

In der Praxis werden Datenströme mithilfe von Stream-Processing-Systemen verarbeitet, die kontinuierliche Berechnungen auf eingehenden Elementen ausführen.

Für die Infrastruktur dient oft der Publish-Subscribe- oder Message-Bus-Ansatz, der eine lose Kopplung von Produzenten und

Anwendungsfelder reichen von Realzeit-Monitoring und betrieblicher Kennzahlen bis hin zu Echtzeit-Analysen, Betrugserkennung oder Operational Intelligence, wo

Typische
Operatoren
umfassen
Mapping,
Filtering,
Aggregation,
Join
und
Windowing,
wobei
oft
Zustandsinformationen
gehalten
werden,
um
über
längere
Zeiträume
hinweg
Analysen
durchzuführen.
Gegenüber
dem
Batch-Processing
funktionieren
Streaming-Systeme
mit
niedrigeren
Latenzen,
stehen
aber
vor
Herausforderungen
wie
Gleichzeitigkeit,
Konsistenz
und
Fehlertoleranz.
Typische
Konzepte
sind
Ereigniszeit,
Verarbeitungszeit,
Wasserzeichen
(Watermarks)
zur
Behandlung
verspäteter
Daten
sowie
windowbasierte
Analysen,
die
kontinuierliche
Ergebnisse
liefern.
Konsumenten
ermöglicht.
Verbreitete
Technologien
umfassen
verteilte
Messaging-Systeme
und
spezialisierte
Streaming-Engines,
darunter
Apache
Kafka,
RabbitMQ
oder
AWS
Kinesis,
sowie
Frameworks
wie
Apache
Flink,
Apache
Spark
Structured
Streaming
oder
Apache
Beam.
Diese
Systeme
unterstützen
Skalierbarkeit,
Fehlertoleranz
und
oft
exactly-once
Semantics,
um
konsistente
Ergebnisse
trotz
Ausfällen
zu
gewährleisten.
schnelle
Reaktionen
auf
eingehende
Signale
erforderlich
sind.