Streaming-Daten sind Daten, die kontinuierlich von tausenden Datenquellen generiert werden, die die Datenaufzeichnungen im Regelfall simultan und in kleinen Paketen (Kilobyte-Bereich) schicken. Zu den Streaming-Daten gehören eine Vielzahl an Daten, wie Protokolldateien, die von Kunden auf Ihren Mobil- oder Webanwendungen generiert werden, E-Commerce-Käufe, Spieleraktivitäten im Spiel, Informationen von sozialen Netzwerken, Börsenmarktinformationen oder raumbezogene Daten und Telemetriedaten von verbundenen Geräten oder Instrumenten in Rechenzentren.

Diese Daten müssen sequentiell und inkrementell auf Aufzeichnungsbasis oder in gleitenden Zeitfenstern verarbeitet werden. Sie können für eine Vielzahl an Analysen, wie Korrelationen, Aggregationen, Filter und Samplings, verwendet werden. Die Informationen aus diesen Analysen ermöglichen Unternehmen, Einblicke in viele Aspekte ihrer Organisation und der Kundenaktivitäten zu erhalten, wie zum Beispiel die Service-Nutzung (zum Messen/Abrechnen), Serveraktivität und den Standort von Geräten, Menschen und physischen Waren, und schnell auf sich ändernde Situationen zu reagieren. Unternehmen können beispielsweise ermitteln, wenn sich die öffentliche Meinung über ihre Marken und Produkte ändert, indem sie konstant die Streams von sozialen Medien analysieren und entsprechend zeitnah auf Probleme reagieren.


Daten-Streamen-Data-Streaming

Die Streaming-Daten-Verarbeitung ist in den meisten Szenarien vorteilhaft, in denen neue, dynamische Daten kontinuierlich generiert werden. Das betrifft die meisten Branchensegmente und Anwendungsfälle für Big Data. Unternehmen beginnen häufig mit einfachen Anwendungen, zum Beispiel zum Sammeln von Systemprotokollen, und einfachen Verarbeitungen, wie gleitende Min-Max-Berechnungen. Diese Anwendungen werden dann mit der Zeit zu komplexen Verarbeitungen weiterentwickelt, die fast in Echtzeit ablaufen. Am Anfang verarbeiten Anwendungen möglicherweise Datenströme, um daraus einfache Berichte zu erstellen, und daraufhin einfache Aktionen durchführen, wie das Auslösen eines Alarms, wenn Schlüsselelemente bestimmte Grenzwerte überschreiten. Letztendlich sind diese Anwendungen dazu in der Lage, kompliziertere Datenanalysen durchzuführen, wie das Anwenden von Algorithmen für maschinelles Lernen, und mehr Details aus den Daten zu extrahieren. Nach und nach werden komplexe Stream- und Ereignisverarbeitungsalgorithmen, wie gleitende Zeitfenster zum Suchen der neuesten Filme, angewendet, und ermöglichen noch tiefere Einblicke.


  • Sensoren in Transportfahrzeugen, Industriemaschinen und Landwirtschaftsmaschinen senden Daten an eine Streaming-Anwendung. Die Anwendung überwacht die Leistung, erkennt potentielle Defekte im Voraus und bestellt automatisch Ersatzteile, damit die Geräte nicht für längere Zeit ausfallen.
  • Ein Finanzdienstleister verfolgt Änderungen am Börsenmarkt in Echtzeit nach, führt Value-at-Risk-Berechnungen durch und gleicht Portfolios automatisch entsprechend der Änderungen am Börsenmarkt aus.
  • Eine Website für Immobilien verfolgt eine Untermenge an Daten von den Mobilgeräten der Verbraucher nach und schickt ihnen, basierend auf ihrem Standort, Vorschläge für potentielle Objekte zur Besichtigung in der Nähe zu.
  • Ein Solarunternehmen muss seinen Kunden immer genug Strom zur Verfügung stellen oder es werden Strafen fällig. Es implementierte eine Streaming-Daten-Anwendung, die alle Solarzellen auf dem Gelände überwacht und in Echtzeit Wartungsmaßnahmen einplant, wodurch die Zeiträume niedriger Stromleistung für jede Zelle und die damit verbundenen Strafzahlungen minimiert werden.
  • Ein Medienunternehmen streamt Milliarden Clickstream-Aufzeichnungen über seine Online-Präsenzen, aggregiert und bereichert die Daten mit demografischen Informationen der Benutzer und optimiert die Platzierung von Inhalten auf seiner Website, um relevantere Informationen und ein besseres Benutzererlebnis für das Zielpublikum bereitzustellen.
  • Ein Online-Gaming-Unternehmen sammelt Streaming-Daten über die Interaktionen der Spieler im Spiel und implementiert diese Daten in seine Gaming-Plattform. Das Unternehmen analysiert die Daten dann in Echtzeit und schafft Anreize und dynamische Erfahrungen, um die Spieler bei Laune zu halten.

Bevor wir uns mit Streaming-Daten befassen, sollten wir Stream-Verarbeitung und Batch-Verarbeitung miteinander vergleichen. Mit der Batch-Verarbeitung können Sie beliebige Abfragen über verschiedene Datensätze berechnen. Normalerweise werden damit Ergebnisse aus allen verfügbaren Daten berechnet, um Tiefenanalysen von Big-Data-Datensätzen zu ermöglichen. Auf MapReduce basierende Systeme, wie Amazon EMR, sind Beispiele von Plattformen, die Batch-Aufträge unterstützen. Bei der Stream-Verarbeitung müssen dagegen eine Datensequenz eingespeist sowie die Metriken, Berichte und zusammenfassenden Statistiken für jede eingehende Datenaufzeichnung inkrementell aktualisiert werden. Sie eignet sich besser für die Echtzeitüberwachung und für Reaktionsfunktionen.

  Batch-Verarbeitung Stream-Verarbeitung
Datenumfang Abfragen oder Verarbeitung über alle oder die meisten Daten im Datensatz. Abfragen oder Verarbeitung über Daten in einem gleitenden Zeitfenster oder über die neuesten Datenaufzeichnungen.
Datengröße
Große Datenbündel.
Individuelle Mikrobündel aus wenigen Aufzeichnungen.
Performance Latenzen in Minuten zu Stunden. Erfordert Latenzen im Bereich von Sekunden oder Millisekunden.
Analysen Komplexe Analysen. Einfache Reaktionsfunktionen, Aggregate und gleitende Metriken.

Viele Unternehmen errichten ein Hybridmodell, indem sie zwei Ansätze miteinander vereinen und eine Echtzeit- sowie eine Batch-Ebene nutzen. Die Daten werden zuerst von einer Streaming-Daten-Plattform, wie Amazon Kinesis, verarbeitet, um Echtzeiteinblicke zu extrahieren, und werden danach in einem Speicher, wie S3, dauerhaft gespeichert, wo sie für eine Vielzahl an Batch-Verarbeitungsanwendungsfällen transformiert und geladen werden können.


Für die Streaming-Daten-Verarbeitung sind zwei Ebenen erforderlich: eine Speicherebene und eine Verarbeitungsebene. Die Speicherebene muss das Ordnen von Aufzeichnungen unterstützen und äußerst kohärent sein, um schnelle, günstige und wiederholbare Lese- und Schreibzugänge von großen Datenströmen zu ermöglichen. Auf der Verarbeitungsebene werden die Daten von der Speicherebene verwendet, um Berechnungen mit den Daten durchzuführen. Danach wird die Speicherebene darüber in Kenntnis gesetzt, welche nicht mehr benötigten Daten gelöscht werden sollen. Sie müssen bei den beiden Ebenen auch für Skalierbarkeit, Datenlanglebigkeit und Fehlertoleranz planen. Deshalb gibt es mittlerweile viele Plattformen, die die Infrastruktur zum Erstellen von Streaming-Data-Anwendungen bereitstellen, wie Amazon Kinesis Streams, Amazon Kinesis Firehose, Apache Kafka, Apache Flume, Apache Spark Streaming und Apache Storm.


Amazon Web Services (AMS) bietet Ihnen verschiedene Optionen für die Arbeit mit Streaming-Daten. Sie können die Vorteile der verwalteten Streaming-Daten-Services von Amazon Kinesis zu Nutze machen oder Ihre eigene Streaming-Daten-Lösung in der Cloud auf Amazon EC2 bereitstellen und verwalten.

Amazon Kinesis ist eine Plattform für das Streamen von Daten in AWS. Sie bietet leistungsfähige Services für das einfache Laden und Analysieren von Streaming-Daten und ermöglicht den Aufbau benutzerdefinierter Streaming-Data-Anwendungen für spezielle Anforderungen. Sie bietet zwei Services an: Amazon Firehose und Amazon Kinesis Streams.

Außerdem können Sie auf Amazon EC2 und Amazon EMR andere Streaming-Daten-Plattformen, wie Apache Kafka, Apache Film, Apache Spark Streaming und Apache Storm betreiben. 

Amazon Kinesis Streams ermöglicht Ihnen, Ihre eigenen Anwendungen zur Verarbeitung oder Analyse von Streaming-Daten für spezielle Anforderungen aufzubauen. Sie können damit jederzeit mehrere Terabyte an Daten pro Stunde aus hunderttausenden Quellen sammeln und speichern. Dann können Sie Anwendungen aufbauen, die die Daten von Amazon Kinesis Streams nutzen, um Echtzeit-Dashboards zu betreiben, Warnmeldungen zu generieren, dynamische Preisgestaltung und Werbung zu implementieren und noch vieles mehr. Mit Amazon Kinesis Streams haben Sie die freie Wahl bei Ihrem Stream-Verarbeitungssystem, darunter Kinesis Client Library (KCL), Apache Storm und Apache Spark Streaming. Weitere Informationen zu Amazon Kinesis Streams »

Amazon Kinesis Firehose ist die einfachste Art, Streaming-Daten in AWS zu laden. Es kann Streaming-Daten aufzeichnen und automatisch in Amazon S3 und Amazon Redshift laden, sodass Analysen mit vorhandenen Business Intelligence-Tools und Dashboards, die Sie bereits heute verwenden, fast in Echtzeit möglich werden. Sie können damit schnell einen ELT-Ansatz implementieren und sogleich die Vorteile der Streaming-Daten auskosten. Weitere Informationen zu Amazon Kinesis Firehose »


Auf Amazon EC2 und Amazon EMR können Sie die Streaming-Daten-Plattformen Ihrer Wahl installieren und Ihre eigenen Speicher- und Verarbeitungsebenen anlegen. Wenn Sie Ihre Streaming-Daten-Lösung auf Amazon EC2 oder Amazon EMR aufbauen, können Sie Reibungspunkte bei der Bereitstellung der Infrastruktur vermeiden und Sie erhalten Zugriff auf eine Vielzahl an Speicher- und Verarbeitungssystemen. Zu den Optionen für Streaming-Daten-Speicherebenen zählen Apache Kafka und Apache Flume. Zu den Optionen für Streaming-Daten-Verarbeitungsebenen zählen Apache Spark Streaming und Apache Storm.