Definition Was ist Amazon Kinesis?

Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Nico Litzel

Amazon Kinesis ist ein Dienst der Amazon Web Services, mit dem sich Streaming-Daten in Echtzeit erfassen, verarbeiten und analysieren lassen. Zu den erfassbaren Daten zählen Video- und Audiodaten, Telemetriedaten von IoT-Devices oder Anwendungsdaten.

Anbieter zum Thema

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

Bei Amazon Kinesis handelt es sich um einen Dienst der Amazon Web Services (AWS). Kinesis ermöglicht es, große Mengen von Streaming-Daten in Echtzeit und hoher Geschwindigkeit zu erfassen, sie zu bearbeiten und direkt zu analysieren. Die Daten können unterschiedlicher Art sein und aus verschiedenen Quellen stammen. Amazon Kinesis erfasst beispielsweise Video- und Audiodaten, Telemetriedaten von IoT-Devices (Internet of Things) oder Daten von Anwendungen und Webseiten. Auf Basis der verarbeiteten und analysierten Daten lassen sich Anwendungen für maschinelles Lernen oder Big-Data-Prozesse realisieren.

Im Gegensatz zur Batch-Verarbeitung der Daten reagiert Amazon Kinesis in Echtzeit und muss mit der Bearbeitung der Daten nicht warten, bis sie vollständig vorliegen. Datenmengen von mehreren hundert Terabyte pro Stunde sind mit Amazon Kinesis problemlos prozessierbar.

Unterschiede zwischen Batch-Processing und Stream-Processing

Amazon Kinesis beherrscht das Stream-Processing von Daten. Diese Art der Datenverarbeitung grenzt sich deutlich vom üblichen Batch-Processing ab. Herkömmliches Batch-Processing arbeitet in einzelnen Schritten. Zunächst werden Daten gesammelt. Diese werden anschließend in regelmäßigen Abständen in eine Datenbank geladen. Die Analyse und Verarbeitung der Daten erfolgt in einem weiteren zeitlichen Abstand durch Zugriff auf diese Datenbank. Bis aktuelle Daten bearbeit- und analysierbar sind, vergeht eine bestimmte Zeit.

Stream-Processing verfolgt einen anderen Ansatz. Anstatt Datenbankabfragen auf gespeicherte Daten anzuwenden, verarbeiten und analysieren Prozesse die Daten kontinuierlich direkt beim Eintreffen. Ein vorheriges Speichern in einer Datenbank ist nicht notwendig. Die Stream-Processing-Plattform muss in der Lage sein, die Daten mit der Geschwindigkeit ihres Eintreffens zu verarbeiten und zu analysieren und benötigt entsprechende Performance.

Auf Basis des Stream-Processings lassen sich schnellere Ergebnisse erzielen als mit herkömmlicher Batch-Verarbeitung. Eine Herausforderung für das Stream-Processing stellt die benötigte Performance der Systeme dar. Die Echtzeit-Prozessierung ist ressourcenaufwendig und erfordert hohe Durchsatzraten sowie minimale Latenzzeiten. Es wird ein leistungsfähiger Verbund von Hochleistungsservern benötigt, der die Anforderungen an die Verarbeitungsgeschwindigkeit erfüllt. Amazon Kinesis stellt diese Systeme für das Stream-Processing in Echtzeit zur Verfügung.

Die Vorteile von Amazon Kinesis

Wichtige Vorteile von Amazon Kinesis sind:

  • Erfassen, Puffern, Verarbeiten und Analysieren von Streaming-Daten in Echtzeit
  • schnelle Einblicke in große Datenmengen
  • Bereitstellung einer voll gemanagten und leistungsfähigen Infrastruktur für das Stream-Processing großer Datenmengen
  • gute Skalierbarkeit des Systems für beliebige Mengen von Streaming-Daten aus einer Vielzahl verschiedener Quellen

Die verschiedenen Funktionsblöcke von Amazon Kinesis

Amazon Kinesis ist in vier Funktionsblöcke aufgeteilt. Diese Funktionsblöcke sind:

  • Kinesis Video Streams
  • Kinesis Data Streams
  • Kinesis Data Firehose
  • Kinesis Data Analytics

Kinesis Video Streams ist für das Erfassen, Verarbeiten und Speichern von Videostreams vorgesehen. Videos lassen sich von verschiedenen Geräten für die Videoanalyse, das maschinelle Lernen oder für andere Zwecke an die Amazon Web Services streamen.

Kinesis Data Streams nimmt Daten von Echtzeitanwendungen auf, verarbeitet sie und speichert sie. Die Verarbeitung wird von diversen Frameworks unterstützt.

Kinesis Data Firehose gestattet das Laden von Datenstreams in AWS-Datenstores. Die Streams lassen sich mit Kinesis Data Firehose erfassen und transformieren. BI-Tools (Business-Intelligence-Tools) übernehmen die Echtzeitanalyse der Daten in den Datenstores.

Mithilfe von Kinesis Data Analytics sind Datenstreams per Standard-SQL-Datenbanksprache analysierbar. Dies stellt eine sehr einfache Möglichkeit dar, die Streaming-Daten ohne ein Framework oder eine besondere Programmiersprache zu verarbeiten und zu analysieren.

Anwendungsbeispiele für Amazon Kinesis

Auf Basis von Amazon Kinesis und der verschiedenen Funktionsblöcke sind zahlreiche Anwendungen realisierbar. Beispielsweise können Kameras Videos an AWS streamen, die in Echtzeit für die Gesichtserkennung oder Sicherheitsüberwachung analysiert werden. Streaming-Daten von IoT-Geräten lassen sich auswerten und Aktionen einleiten. So kann ein bestimmter Prozess bei der Überschreitung eines Schwellwerts eines Sensors gestartet werden. Sich andeutende Störungen sind im laufenden Betrieb frühzeitig erkennbar. Prozesse lösen entsprechende Maßnahmen wie die Beauftragung einer Serviceleistung oder die Bestellung eines Ersatzteils aus.

Beispielsweise verwendet Netflix Amazon Kinesis, um die Kommunikation zwischen verschiedenen Anwendungen zu überwachen und Probleme schnell zu beheben. So lässt sich eine hohe Verfügbarkeit des Systems erzielen. Sonos nutzt Kinesis zur Überwachung von Ereignissen drahtloser HiFi-Devices. Auf Basis von Amazon Kinesis sind Anwendungen programmierbar, die das Kunden- und Bestellverhalten in einem Onlineshop oder auf eine Onlineplattform in Echtzeit analysieren und geeignete Aktionen vorschlagen.

(ID:45501154)