Auf dem Weg zur Industrie 4.0 und letztlich der Smart Factory kommen Unternehmen an der Nutzung großer Datenmengen nicht vorbei. Denn: Die Echtzeitanalyse umfangreicher Datenströme über das Internet of Things (IoT) bietet die Chance, tiefe – und vor allem neue – Einblicke in das eigene Geschäft zu erhalten. Beispielsweise lassen sich Produktionsprozesse und Lieferketten optimieren oder auch Ausfallzeiten reduzieren.
In der Praxis fürchten dennoch viele Unternehmen die Herausforderung, einfach weil es an technologischem und architektonischem Wissen mangelt. Mit diesem Artikel möchte ich den Verantwortlichen ein Stück weit diese Vorbehalte nehmen. Schließlich existiert mit Lambda eine geläufige Referenzarchitektur, die die Verarbeitung von Echtzeitdaten und damit den Einstieg ins Internet of Things verhältnismäßig einfach gestaltet. Dazu ermöglichen moderne Cloud-Dienste den schnellen und wirtschaftlichen Aufbau einer geeigneten Infrastruktur.
Lambda: Zwei Pfade für ein Halleluja
Entsprechend dem λ-Zeichen unterteilt die Lambda-Architektur den Datenstrom in zwei Pfade: Speed Layer und Batch Layer. Der Speed Layer übernimmt dabei die Echtzeitverarbeitung, während der Batch Layer die Daten dauerhaft speichert.

Beispielhafter Aufbau einer Lambda-Architektur: Abhängig von der angestrebten Verwendung, werden Datenströme auf den Speed oder Batch Layer verteilt. (Grafik: ORAYLIS)
Erzeugt werden die Datenströme von Produkten, die mit Sensoren oder auch GSM-, RFID bzw. GPS-Devices ausgestattet sind. Die Verteilung auf Speed oder Batch Layer regelt indes ein sogenannter Event-Handler. Durch seine hochgradige Skalierbarkeit kann er Millionen von Ereignissen gleichzeitig empfangen und zur weiteren Verarbeitung bereitstellen. Typische Beispiele für Event-Handler sind der Event Hub und der IoT Hub auf der Azure-Cloud-Plattform von Microsoft. Ein Pendant im Open-Source-Bereich ist Apache Kafka.
Wenn die Zeit drängt: der Speed Layer
Es deutet sich bereits an: Der Speed Layer ist vor allem für zeitkritische Analysen gedacht. Infolgedessen können Events in Echtzeit gesteuert und getriggert werden. So lässt sich beispielsweise ein Fehler im Produktionszyklus unmittelbar identifizieren und beseitigen. Über einen Serving Layer können die Analyseergebnisse visualisiert und – zum Beispiel in einem Data Warehouse – qualitätsgesichert abgelegt werden. Als Serving Layer kann ein Tool wie Power BI oder auch ein multidimensionaler Cube fungieren.
Für den Aufbau des Speed Layers stellt Microsoft Azure indes Dienste wie Azure Stream Analytics oder Apache Spark on HDInsight zur Verfügung. Abhängig vom Anwendungsfall sind aber auch eine Vielzahl anderer Szenarien möglich.
Daten dauerhaft speichern: der Batch Layer
Im Speed Layer findet also keine Speicherung der ursprünglichen Rohdaten statt. Dies ist dem Batch Layer vorbehalten. Bei Bedarf persistiert er jedes eintreffende Event in einem Storage Speicher. Dies bietet zwei Vorteile: Einerseits lässt sich jedes Event zu seinem Entstehungszeitpunkt zurückverfolgen. Andererseits können die Events auch im Nachgang analysiert werden. So können die Event-Daten mit weiteren Daten – etwa aus einem Data Warehouse – angereichert werden, um daraus neue Erkenntnisse zu erschließen. Im Azure-Umfeld bietet sich ein Data Lake oder ein Storage Account zur Datenspeicherung an. Die passende Analyse-Engine ist dann Data Lake Analytics.
Mit der Kappa-Architektur existiert inzwischen auch ein Gegenentwurf zu Lambda, der komplett auf den Batch Layer verzichtet. Es muss also nur die Speed-Schicht bzw. eine Code-Basis verwaltet und gepflegt werden, wodurch sich der Arbeitsaufwand spürbar verringert. Allerdings macht diese Vorgehensweise nur Sinn, wenn ausschließlich strömende Daten analysiert werden sollen und die Historie keine weitere Rolle spielt. Sollen historische Daten mit in die Analyse einbezogen werden, dann führt weiterhin kein Weg um Lambda.
Infrastruktur: die Cloud als Schlüssel
Noch ein paar Worte zur Infrastruktur: Wenn irgendetwas die Bezeichnung Big Data verdient, dann sind es Echtzeitdaten aus IoT-Prozessen. Entsprechend hoch sind die Anforderungen. Laufend wachsende Datenströme müssen nicht nur gespeichert, sondern auch performant weiterverarbeitet werden. Daher ist es naheliegend, beim Aufbau einer Lambda-Architektur auf Cloud-Dienste zu setzen. Speicher- und Rechenkapazitäten können hier flexibel und innerhalb von Sekunden skaliert werden. Bezahlt wird nur nach dem tatsächlichen Bedarf. So sind Unternehmen auch für künftige bzw. steigende Anforderungen bestens gewappnet.
Es lässt sich festhalten, dass der Einstieg in die IoT-Welt nicht so kompliziert ist, wie es zunächst erscheinen mag. Mit Lambda als adaptierbarer Referenzarchitektur und Cloud-Angeboten wie Azure lassen sich zügig erste, leistungsfähige Prototypen aufbauen. Diese können schließlich bis hin zu einer weltweiten, skalierbaren Lösung weiterentwickelt werden.
Kommentare (0)