Definition

Was ist Apache Flink?

| Autor / Redakteur: Stefan Luber / Nico Litzel

(Bild: © aga7ta - stock.adobe.com)

Apache Flink ist ein Framework der Apache Software Foundation für das sogenannte Stream Processing. Es ermöglicht die kontinuierliche Verarbeitung von Datenströmen mit geringer Verzögerung. Das Framework ist einsetzbar für Big-Data-Anwendungen und Echtzeitanalysen.

Apache Flink ist in der Lage, sowohl kontinuierliche Datenströme als auch Stapeldaten zu verarbeiten. Es handelt sich um ein Framework der Apache Software Foundation, das als Open-Source Software verfügbar ist. Apache Flink hat sich aus einem Apache-Incubator-Projekt entwickelt und wurde zu einem Top-Level-Projekt. Die Veröffentlichung der Version 1.0.0 erfolgte im Jahr 2016. Die aktuellste Version des Frameworks ist die Version 1.7.2 (Stand März 2019). Apache Flink ermöglicht Echtzeitanalysen und kommt häufig im Big-Data-Umfeld zum Einsatz. Das Framework stellt Verfahren bereit, um Datenströme mit hoher Effizienz und Geschwindigkeit fehlertolerant zu verarbeiten. Neben dem Hadoop-Framework unterstützt es weitere Cluster-Computing-Frameworks. Typische Anwendungsbereiche für Apache Flink sind:

  • die Echtzeitkontrolle von Finanztransaktionen
  • die Echtzeitauswertung des Kunden- oder Userverhaltens auf Internetseiten
  • die Echtzeitverarbeitung großer Mengen von Sensordaten der automatisierten Prozesse der Industrie 4.0

Bekannte Unternehmen, die Apache Flink einsetzen, sind beispielsweise Uber und Netflix.

Was ist Stream Processing?

Beim Stream Processing werden Daten kontinuierlich mit geringer Verzögerung verarbeitet. Die Datenverarbeitung erfolgt quasi direkt zum Zeitpunkt, an dem die Informationen und Daten entstehen oder bereitgestellt werden. Diese Art der Datenprozessierung unterscheidet sich deutlich von herkömmlichen Datenverarbeitungsmethoden. Die klassischen Verarbeitungsprozesse arbeiten mit Datenbanken oder Datenservern und speichern die gelieferten Daten zunächst ab. Erst in einem weiteren Schritt greifen die verarbeitenden Anwendungen wie Analyseprogramme auf die in den Datenspeichern vorhandenen Informationen zu. Es entsteht ein relativ großer zeitlicher Versatz zwischen der Generierung und der Auswertung der Informationen.

Stream Processing hingegen erlaubt die unmittelbare Reaktion auf Ereignisse. Vor allem für Anwendungen, bei denen die Daten in kontinuierlichen Streams entstehen wie bei Sensordaten, Finanz-Transaktionsdaten oder User-Trackingdaten, bietet das Stream Processing zahlreiche Vorteile. Stream Processing ist darüber hinaus in der Lage, mehrere Datenstreams parallel zu verarbeiten. Aus jeden Stream lassen sich eigene Folgeaktionen und Analysen ableiten. Systeme, die Datenstreams empfangen und verarbeiten, werden Stream Prozessoren genannt.

Die Wichtigsten Merkmale, Funktionen und Eigenschaften von Apache Flink

Stream Processing und die Echtzeitanalyse stellt IT-Systeme vor einige Herausforderungen. Das Apache-Flink-Framework stellt Lösungen für das Stream Processing bereit, die diese Herausforderungen meistern. Eine wichtige Eigenschaft von Apache Flink ist die Fehlertoleranz. Das Framework ist für Cluster-Computing konzipiert und arbeitet in hochverfügbaren Systemen ohne Single Point of Failure. Bei Ausfällen einzelner Komponenten ist die Konsistenz aller Ereigniszustände wiederherstellbar.

Für die Stream-Processing-Anwendungen stellt Apache Flink mehrere APIs bereit. Die Basis-API ist die DataStream-API. Zum Steuern laufender Anwendungen ist eine REST-API vorhanden. Ebenfalls nutzbar sind eine Tabellen-API und die SQL-Unterstützung. Es lassen sich Schnittstellen zu Streaming- und Batch-Quellen realisieren. Neben den APIs verfügt Apache Flink über verschiedene Bibliotheken, die für die Prozessierung von Grafiken, für die Analytik oder für die Verarbeitung komplexer Ereignisse verwendet werden können. Eine dieser Bibliotheken ist die CEP-Bibliothek (Complex Event Processing).

Die Prozessfunktionen (ProcessFunctions) von Apache Flink erlauben es, den Zustand und die Zeit von Ereignissen zu kontrollieren. Ereigniszustände lassen sich speichern und mit Timern für zukünftige Berechnungen versehen. Für häufig verwendete Streaming- und Speichersysteme sind Konnektoren vorhanden. Zu den von Apache Flink unterstützten Dateisystemen zählen HDFS, NFS und S3.

Vorteile durch den Einsatz von Apache Flink

Apache Flink und das Stream Processing bieten zahlreiche Vorteile. Datenströme mit hohem Datenvolumen lassen sich mit geringer Verzögerung und hoher Geschwindigkeit verarbeiten und analysieren. Es sind sowohl kontinuierliche Datenströme als auch Daten eines Dateisystems lesbar. Anwendungen sind in der Lage, binnen Sekundenbruchteilen auf neue Informationen zu reagieren. Das Apache-Flink-Framework ist extrem skalierbar und fehlertolerant. Das Stream Processing dezentralisiert und entkoppelt die benötigte IT-Infrastruktur, da keine eigenen Datenbankstrukturen notwendig sind. Kurz zusammengefasst sind die Vorteile von Apache Flink folgende:

  • Echtzeitverarbeitung von Daten mit minimalem Zeitversatz
  • hoher Datendurchsatz
  • keine Datenbankinfrastruktur notwendig
  • Daten lassen sich so wie sie entstehen kontinuierlich verarbeiten
  • Fehlertoleranz und hohe Verfügbarkeit
  • die Konsistenz der Ereigniszustände ist zu jeder Zeit sichergestellt
  • auch für die Batch-Verarbeitung geeignet
  • gute Skalierbarkeit der Plattform
  • Unterstützung von SQL durch die SQL-API
  • Unterstützung zahlreicher Plattformen, Frameworks und Systeme wie Kafka, Kinesis, Kubernetes, YARN, HDFS und weiterer
  • Unterstützung und Support durch eine große Open-Source-Community

Kommentare werden geladen....

Kommentar zu diesem Artikel abgeben

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Universelle Analytik für alle Daten in Echtzeit

Nachbericht Splunk .conf19 Las Vegas

Universelle Analytik für alle Daten in Echtzeit

Splunk, ein Spezialist für IT-Betriebs-Analytik und Security, hat in Las Vegas auf seiner zehnten Anwenderkonferenz .conf19 vor rund 11.000 Besuchern eine Reihe von neuen und aktualisierten Analytik- und KI-Werkzeugen vorgestellt: „Data to everything“. Neben neuen Angeboten für IT-, AI- und DevOps stieß vor allem die Erweiterung des Preismodells auf großes Interesse. lesen

Ververica kündigt Stateful Functions für Apache Flink an

Nachbericht Flink Forward Europe 2019

Ververica kündigt Stateful Functions für Apache Flink an

Ververica, vormals Data Artisans und jetzt bei Alibaba, hat kürzlich für seine Stream-Processing-Plattform auf der Entwicklerkonferenz „Flink Forward Europe 2019“ Stateful Functions für Apache Flink angekündigt. Der Quellcode soll der Apache Flink Community zur Verfügung gestellt werden. lesen

Ververica stellt Open-Source-Framework vor

Stateful Functions

Ververica stellt Open-Source-Framework vor

Mit Stateful Functions hat der Apache-Flink-Pionier Ververica ein Open-Source-Framework für die Stream-Verarbeitung vorgestellt. Es soll leistungsstarke Abstraktionen für ereignisgesteuerte Architekturen ermöglichen. lesen

Ververica stellt Trainingsangebot vor

Stream Processing und Apache Flink auf Wachstumskurs

Ververica stellt Trainingsangebot vor

Event Stream Processing, das zur Verarbeitung großer Datenmengen in nahezu Echtzeit eingesetzt wird, erfreut sich einem stetig steigenden Interesse. Ververica (ehemals Data Artisans) reagiert darauf mit einem neuen Trainingsangebot. lesen

Apache Flink in Version 1.9.0 verfügbar

Stream Processing ausgebaut

Apache Flink in Version 1.9.0 verfügbar

Das quelloffene Stream-Processing-Framework Apache Flink ist ab sofort in Version 1.9.0 verfügbar. Die Community freut sich über einen großen Schritt nach vorne, da nun unter anderem Stream- und Batchverarbeitungsfunktionen in einer einheitlichen Runtime integriert sind. lesen

Stateful Stream Processing mit Apache Flink

Kommentar von Fabian Hüske, Ververica

Stateful Stream Processing mit Apache Flink

Apache Flink ist für typische Geschäftsanwendungen gedacht, die bestimmte Geschäftslogiken auf kontinuierliche Datenflüsse in Echtzeit anwenden. lesen

Ververica-Plattform in Version 1.4.0 verfügbar

Stream Processing

Ververica-Plattform in Version 1.4.0 verfügbar

Ab sofort bietet Ververica (ehemals Data Artisans) seine Stream-Processing-Plattform in Version 1.4.0 an. Zu den Neuerungen zählen Verbesserungen bestehender Komponenten sowie zusätzliche Funktionen. lesen

Mit Apache Zeppelin Daten analysieren

Interaktives Notizbuch für Big Data

Mit Apache Zeppelin Daten analysieren

Das Apache-Toplevel-Projekt Zeppelin bietet ein Notizbuch für Daten aus anderen Systemen, mit denen Anwender diese effektiv analysieren können. Zeppelin arbeitet dazu eng mit Spark, Flink und Hadoop zusammen. lesen

Datenbasis für das IoT-Zeitalter

Crate.io

Datenbasis für das IoT-Zeitalter

IT-Spezialisten haben über Jahrzehnte SQL-Know-how aufgebaut, doch das IoT-Zeitalter erfordert die massenweise Verarbeitung von Echtzeit-Datenstreams, die von Sensoren erzeugt werden. Crate.io vereinigt beide Welten. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 45818769 / Definitionen)