© Excellent backgrounds/Shutterstock.com
Java Magazin
Stream Processing mit Apache Flink

Heute schon gestreamt?

Data Streaming oder Stream Processing ist die unmittelbare Verarbeitung von Daten in Bewegung und revolutioniert die Datenanalyse. Was bedeutet es, den Einsatz von Stream Processing für die Entwicklung einer neuen Anwendung oder für bestehende Anwendungen zu berücksichtigen?

Stephan Ewen


Die meisten Daten entstehen heute als kontinuierliche Streams: Ereignisse, die von IoT-Sensoren erfasst werden, Benutzeraktivitäten auf einer Website, Finanztransaktionen etc. Vor der Stream-Verarbeitung wurden diese Daten oft in einer Datenbank, einem Dateisystem oder anderen Formen der Massenspeicherung abgelegt. Anwendungen beispielsweise für Business Intelligence würden bei Bedarf bestimmte Daten abrufen und Berechnungen durchführen. Stream Processing dreht dieses Paradigma um: Die Anwendungslogik, die Analytik und die Abfragen sind kontinuierlich vorhanden und die Daten fließen kontinuierlich durch sie hindurch.

Die Stream-Verarbeitung ist definiert durch die Verarbeitung von Daten in Bewegung, das bedeutet direkt bei ihrer Generierung oder Bereitstellung. Die Analyse von Datenströmen im großen Stil war bisher jedoch schwierig. Stream Processing, also die Stream-Verarbeitung, hat sich mittlerweile weiterentwickelt, um eine Vielzahl von analytischen und transaktionalen Anwendungen zu unterstützen. Mit zunehmender Reife der Technologie kommen immer mehr Anwendungsfälle hinzu.

Sich an Eingaben und deren Verwendung erinnern

Während in der Anfangszeit Stream-Prozessoren zur Berechnung ungefährer aggregierter Werte verwendet wurden, lassen sich heute bereits präzise Analyseapplikationen betreiben und es lässt sich komplexe Geschäftslogik in Hochdurchsatz-Streams bewerten. Einer der wichtigsten Aspekte der Stream-Verarbeitung ist die Zustandsbehandlung, also die „Erinnerung“ an vergangene Eingaben und deren Verwendung, um die Verarbeitung zukünftiger Eingaben zu beeinflussen.

Beim Empfangen eines Ereignisses aus dem Stream reagiert eine Stream-Processing-Anwendung auf dieses Ereignis: Sie kann eine Aktion auslösen, ein Aggregat oder eine Statistik aktualisieren oder sich dieses Ereignis als zukünftige Referenz „merken“. Streaming-Berechnungen können auch mehrere Datenströme gemeinsam verarbeiten, und jede Berechnung über den Ereignisdatenstrom kann andere Ereignisdatenströme erzeugen.

Die Systeme, die Datenströme empfangen und senden und Anwendungs- oder Analyselogik ausführen, werden als Stream-Prozessoren bezeichnet. Die Hauptaufgabe eines Stream-Prozessors besteht darin, sicherzustellen, dass der Datenfluss und die Berechnungsskalen effizient und fehlertolerant sind.

Apache Flink verarbeitet Datenströme mit hohem Durchsatz bei geringer Latenzzeit

Apache Flink [1] ist ein Stream-Processing-Framework aus dem Open-Source-Umfeld. Entwickelt wurde Flink als Distri...

Java Magazin
Stream Processing mit Apache Flink

Heute schon gestreamt?

Data Streaming oder Stream Processing ist die unmittelbare Verarbeitung von Daten in Bewegung und revolutioniert die Datenanalyse. Was bedeutet es, den Einsatz von Stream Processing für die Entwicklung einer neuen Anwendung oder für bestehende Anwendungen zu berücksichtigen?

Stephan Ewen


Die meisten Daten entstehen heute als kontinuierliche Streams: Ereignisse, die von IoT-Sensoren erfasst werden, Benutzeraktivitäten auf einer Website, Finanztransaktionen etc. Vor der Stream-Verarbeitung wurden diese Daten oft in einer Datenbank, einem Dateisystem oder anderen Formen der Massenspeicherung abgelegt. Anwendungen beispielsweise für Business Intelligence würden bei Bedarf bestimmte Daten abrufen und Berechnungen durchführen. Stream Processing dreht dieses Paradigma um: Die Anwendungslogik, die Analytik und die Abfragen sind kontinuierlich vorhanden und die Daten fließen kontinuierlich durch sie hindurch.

Die Stream-Verarbeitung ist definiert durch die Verarbeitung von Daten in Bewegung, das bedeutet direkt bei ihrer Generierung oder Bereitstellung. Die Analyse von Datenströmen im großen Stil war bisher jedoch schwierig. Stream Processing, also die Stream-Verarbeitung, hat sich mittlerweile weiterentwickelt, um eine Vielzahl von analytischen und transaktionalen Anwendungen zu unterstützen. Mit zunehmender Reife der Technologie kommen immer mehr Anwendungsfälle hinzu.

Sich an Eingaben und deren Verwendung erinnern

Während in der Anfangszeit Stream-Prozessoren zur Berechnung ungefährer aggregierter Werte verwendet wurden, lassen sich heute bereits präzise Analyseapplikationen betreiben und es lässt sich komplexe Geschäftslogik in Hochdurchsatz-Streams bewerten. Einer der wichtigsten Aspekte der Stream-Verarbeitung ist die Zustandsbehandlung, also die „Erinnerung“ an vergangene Eingaben und deren Verwendung, um die Verarbeitung zukünftiger Eingaben zu beeinflussen.

Beim Empfangen eines Ereignisses aus dem Stream reagiert eine Stream-Processing-Anwendung auf dieses Ereignis: Sie kann eine Aktion auslösen, ein Aggregat oder eine Statistik aktualisieren oder sich dieses Ereignis als zukünftige Referenz „merken“. Streaming-Berechnungen können auch mehrere Datenströme gemeinsam verarbeiten, und jede Berechnung über den Ereignisdatenstrom kann andere Ereignisdatenströme erzeugen.

Die Systeme, die Datenströme empfangen und senden und Anwendungs- oder Analyselogik ausführen, werden als Stream-Prozessoren bezeichnet. Die Hauptaufgabe eines Stream-Prozessors besteht darin, sicherzustellen, dass der Datenfluss und die Berechnungsskalen effizient und fehlertolerant sind.

Apache Flink verarbeitet Datenströme mit hohem Durchsatz bei geringer Latenzzeit

Apache Flink [1] ist ein Stream-Processing-Framework aus dem Open-Source-Umfeld. Entwickelt wurde Flink als Distri...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang