Anzeige
Anzeige
Beitrag drucken

Event Stream Processing mit Apache Flink

Eine leistungsfähige Plattform für IoT-Anwendungen

Wer IoT-Anwendungen einsetzt, will schnell auf generierte Daten mit Aktionen reagieren. Das Event Streaming Framework Apache Flink ist genau darauf ausgelegt, große kontinuierlich erzeugte Datenmengen mit geringer Latenz zu verarbeiten.

 (Bild: Ververica)

(Bild: Ververica)

Das Internet der Dinge (Internet of Things, kurz IoT) ist in Sachen Datenverarbeitung eine Herausforderung für die IT-Industrie und diejenigen produzierenden Unternehmen, die IoT nutzen oder IoT-Services und entsprechende Produkte anbieten. Das Berliner Software-Startup Data Artisans hat im Wesentlichen drei Ursachen dafür ausgemacht:

  • • Geräte produzieren viel mehr Daten als Benutzer. Die meisten herkömmlichen Datenbanken sind für den Umgang mit Daten, die kontinuierlich in großer Menge von Edge-Geräten, also den Datenlieferanten der IoT-Anwendung, ineffizient und unpraktikabel.
  • • IoT-Anwender erwarten Informationen und Services nahezu in Echtzeit, die sofort auf ihre Anfragen reagieren. Klassische Batch-Datenoperationen sind für diese Anforderung ungeeignet.
  • • Die Konnektivität ist in der IoT-Industrie nie gewährleistet. Dies gilt insbesondere, wenn Daten von Edge-Geräten über Mobilfunknetze gesendet werden.

Event Streaming mit Flink

Die Firma Freeport Metrics hat an mehreren Data-Streaming-Projekten in der IoT-Branche gearbeitet. Das hierbei eingesetzte Apache Flink Event Stream Processing Framework, hat sich dabei als besonders geeignet erwiesen. Jakub Piasecki, Director of Technology bei Freeport Metrics, ist der Ansicht, dass Stream Processing mit Apache Flink im IoT zukünftig ein Muss ist.

Echtzeit-Datenverarbeitung

IoT-Anwendungen müssen bei bestimmten Ereignissen sofort reagieren. Zum Beispiel möchte der Betreiber einer Windturbine sofort benachrichtigt werden, falls es windig ist, aber keine Energie produziert wird. Im Idealfall kann ein Algorithmus sogar automatisch entscheiden, was zu tun ist. Die Verarbeitung von Datenströmen anstelle von periodisch übertragenen Datensätzen verändert Anwendungen grundlegend. Berechnungen erfolgen, sobald Daten bereitstehen, Warnungen können zeitnah ausgelöst und Ereignismuster kontinuierlich erkannt werden.

Ereigniszeit ist entscheidend

Wenn Daten von IoT-Geräten empfangen werden, gibt es keine Garantie dafür, dass die Messwerte ihrer Sensoren in der Reihenfolge ihrer Erfassung über das Netzwerk ankommen. Für Geräte, die Daten über ein Mobilfunknetz übertragen, müssen Latenzzeiten und Netzwerkunterbrechungen berücksichtigt werden. Selbst wenn über eine stabilere Verbindung gesendet wird, ist es unmöglich zu garantieren, dass alle Daten in der richtigen Reihenfolge empfangen werden. Als Beispiel stelle man sich Maschinen- oder Automobilteile vor, die sich durch eine Produktionslinie mit daran angeschlossenen Sensoren bewegen. Meistens ist es beim Umgang mit Daten von IoT-Geräten sinnvoll, Ereignisse entsprechend dem Zeitpunkt ihrer Erzeugung (Ereigniszeit) und nicht nach dem Zeitpunkt ihrer Ankunft im Rechenzentrum oder nach der Verarbeitung (Aufnahme- bzw. Verarbeitungszeit) zu verarbeiten. Aus diesem Grund ist die Unterstützung der Ereigniszeit ein Muss bei der Auswahl eines Datenverarbeitungs-Frameworks für IoT Daten.

Ungeordnete Daten verarbeiten

Die Datenvorverarbeitung am Netzwerkrand ‚on Edge‘ ist in der Regel der härteste Teil des Prozesses. Es ist noch schwieriger, wenn man die Quelle nicht vollständig kontrolliert, wie es in der IoT-Welt oft der Fall ist. Dies kann in einen erheblichen Anteil an komplexer Verarbeitungslogik resultieren. Event-Stream-Verarbeitung bietet genau hierfür einige nützliche Tools. Besonders wichtig ist das Windowing-Konzept, bei dem die Elemente eines unendlichen und kontinuierlichen Stroms für die weitere Verarbeitung in endliche Mengen gruppiert werden, basierend auf Dimensionen wie Zeit oder Elementanzahl. Da die Daten allerdings nicht nach Zeit sortiert empfangen werden, ist es nicht ohne weiteres möglich zu entscheiden, ob alle relevanten Daten angekommen sind. Flink stellt Mechanismen zur Verfügung, die die Verarbeitung von ungeordneten Daten signifikant erleichtern. Darüber hinaus bietet Flink auch mehrere Optionen, wie verspätete Daten verarbeitet werden können.

Streams parallel verarbeiten

Wie bereits erwähnt, stellen IoT-Geräte ungeheure Datenmengen bereit. Deshalb ist es üblicherweise unerlässlich, die Datenstromverarbeitung auf mehrere Rechner zu verteilen. Apache Flink stellt zu diesem Zweck das Konzept der Aufteilung von Strömen nach Schlüsselwerten vor. Sobald ein Datenstrom partitioniert ist, kann er parallel auf mehreren Rechnern verarbeitet werden. Eine IoT-Anwendung zum Flottenmanagement kann zum Beispiel einen Datenstrom von Positionsangaben von GPS-Sensoren nach den Kennzeichen der Fahrzeuge partitionieren, um individuell jedes Fahrzeug zu überwachen. Natürlich muss ein Schlüsselwert nicht an ein einzelnes IoT-Gerät oder einen Standort gebunden sein. So lassen sich beispielsweise verschiedene Signale, die sich auf ein einzelnes Fahrzeug beziehen, auch gruppieren (GPS, Hardwaresensoren, Kennzeichenerfassung et cetera).

Der lokale Zustand

Jeder Programmierer dürfte wissen, dass sich die Latenzzahlen aufgrund von neuer Hardware jedes Jahr ändern. Jedoch bleiben einige Grundregeln konstant:

  • • Je näher die Daten liegen, desto schneller können sie bearbeitet werden.
  • • Netzwerktransport verringert die Performance.

Mit Apache Flink hingegen lassen sich Daten genau dort berechnen, wo sie sich befinden. Noch wichtiger ist, dass der Zustand einer Anwendung durch einen effizienten Checkpointing-Mechanismus im Fehlerfall wieder konsistent hergestellt werden kann.

Apache Flink und Messaging

Wenn man an Event Streaming denkt, spielen oft auch Messaging-Systeme wie Apache Kafka, AWS Kinesis oder RabbitMQ eine wichtige Rolle. Diese Systeme sind hoch skalierbar und zuverlässig für die Aufnahme und Verteilung großer Mengen von Ereignissen. Flink bietet erstklassigen Support für alle drei Messagingsysteme, sowohl für Produzenten als auch für Konsumenten. Die Ausgabe von Ergebnissen kann von Flink auch konsistent mit dem Einlesen in diese Systeme erfolgen, wenn der Anwendungsfall es erfordert.

Konzeptionell eher einfach

Wenn Unternehmen eine Event-Streaming-Architektur für ihre IoT-Anwendungen wählen, können sie sich meist nach einer sehr kurzen Eingewöhnungsphase, auf die Kernlogik Ihrer Anwendung konzentrieren. Den Großteil der Arbeit erledigt Apache Flink für sie. „Die Beobachtungen von Freeport Metrics sind aus meiner Sicht überzeugende Argumente, die dafür sprechen, dass IoT-Anwendungen von dem Einsatz von Apache Flink profitieren kann“, erklärt Fabian Hueske, Co-Founder von Data Artisans aus Berlin. „Die Funktionen, Konnektoren, Fehlertoleranz, Skalierbarkeit und Zuverlässigkeit machen Apache Flink eine ausgezeichnete Plattform, um die Herausforderungen zu meistern, mit denen IoT-Unternehmen konfrontiert sind, die jeden Tag, jede Minute oder Sekunde riesige Mengen an Daten verarbeiten.“


Das könnte Sie auch interessieren:

Mit einem Manufacturing Execution System (MES) können mittelständische Fertigungsbetriebe ihre Produktion digitalisieren und sie so auf komplexere Marktanforderungen ausrichten. Auf welche Funktionalitäten Fertiger achten sollten, zeigt der folgende Beitrag.‣ weiterlesen

Das Maschinenbauunternehmen Schenck Process hat die serverlose, modulare IoT-Plattform Coniq Cloud auf den Markt gebracht. Das System ist als IoT-Backbone für die eigenen Maschinen gedacht und bietet Anwendungsprogramme etwa zu Optimierung von Produktionszeiten und für Datenauswertungen.‣ weiterlesen

Komplexe Fertigung in Kombination mit hohem Termindruck führten beim Maschinenbauer Knoll dazu, dass lediglich 53 Prozent der Liefertermine zu halten waren. Nach der Einführung der PPS-Lösung von LF Consult liegt die Termintreue bei über 90 Prozent - bei kürzeren Durchlaufzeiten.‣ weiterlesen

Wenn sich am 30. Mai die Hallentore zum Flagschiff der Deutschen Messe öffnen, kann das als Startschuss für das postpandemische Messegeschehen gelten. Denn die Hannover Messe nimmt traditionell eine Sonderrolle unter den Industrieausstellungen ein. Grund dafür ist auch das hochkarätige Begleitprogramm, das diesmal mit 600 Vorträgen auf sechs Bühnen die Angebote der 2.500 Aussteller einrahmt.‣ weiterlesen

In diesem Jahr findet die Intralogistikmesse Logimat wieder in Präsenz statt. Und laut Veranstalter bewegen sich die Buchungen wieder auf Vor-Pandemie-Niveau. 1.500 Aussteller werden vom 31. Mai bis zum 2. Juni in Stuttgart erwartet.‣ weiterlesen

Spectralink hat DECT-Geräte mit Integration in das SIP-Gateway von Microsoft Teams auf den Markt gebracht.‣ weiterlesen

Sollen Cloud-Anwendungen als Microservices implementiert werden, unterteilen Entwickler größere Applikationen bereits bei der Erstellung in Module. Bereitgestellt werden Microservices meist über Distributed Clouds, die durch ihre vernetzten und verteilten Server hochperformant und reaktionsschnell arbeiten.‣ weiterlesen

Um gesteckte Ziele etwa in Sachen Effizienz, Nachhaltigkeit und Innovationsfähigkeit zu erreichen, vernetzen Hersteller zunehmend ihre Produktionen. Das Prinzip der Composability soll Firmen dabei helfen, in ihren modularen IT-Architekturen das Beste aus MES/MOM, IoT und IIoT zu kombinieren.‣ weiterlesen

Die App 5i.Maintenance der vergleichsweise jungen Softwarfirma 5thIndustry will Anwendern einen besseren Überblick über ihre Anlagen samt Wartungsstatus vermitteln. Wesentliche Einsatzzwecke sind die Erfassung von Maschinen und Teilkomponenten samt Eigenschaften wie Standorte, Kostenstellen und Zustandsberichte.‣ weiterlesen

Die neue KI-gestützte Akustikprüfung von Porsche Digital kann Störgeräusche automatisiert erkennen. Mit der Software-as-a-Service-Lösung lassen sich über verschiedene Anwendungsfälle hinweg die Qualität von Produkten und Fertigungsprozessen steigern. Porsche-CIO Mattias Ulbrich erläutert die Arbeitsweise des KI-Systems.‣ weiterlesen

In Kooperation mit dem Zentralverband des deutschen Handwerks (ZDH) wurde die Software Edira von Etes mit dem 'Routenplaner Cyber-Sicherheit im Handwerk' ausgestattet. Diese stellt ab Mai 2022 die kostenlose digitale Version des Routenplaners für das strukturierte Abarbeiten des IT-Grundschutzprofils für Handwerksbetriebe dar.‣ weiterlesen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige