„Echtzeit-Daten sind das neue Öl. Ich arbeite daran, wie sie effizient verarbeitet werden“

Pratyush Agnihotri forscht an einem KI-basierten System. Im Interview erzählt er, wie damit die vorhandene Rechenleistung bei der Verarbeitung von Echtzeit-Daten effizienter gesteuert und letztlich Energie gespart werden kann.

Du arbeitest an Lösungen für die parallele Verarbeitung von Echtzeit-Datenströmen. Damit bist Du Teil des C2-Projektes im Sonderforschungsbereich MAKI – „Multi-Mechanismen Adaption für das künftige Internet“. Wo begegnet uns Deine Forschung im Alltag?

Pratyush Agnihotri: Werbefirmen können zum Beispiel die Daten von Computerspielern in Echtzeit auswerten, um die Werbung anhand des Nutzungsverhaltens während des Streamens gezielt auszuspielen. In einem Smart-City-Szenario ist es nötig, den Verkehr in Echtzeit zu analysieren, um Staus zu vermeiden und Ampeln geschickt zusteuern. Im Gesundheitsbereich kann es lebensrettend sein, die Daten von Herz-oder Diabetes-Patienten live zu überwachen. Auch die Telekommunikationsindustrie profitiert davon, Netzwerkdaten in Echtzeit analysieren zu können. Auf diese Weise kann schnell reagiert werden, wenn es Unregelmäßigkeiten gibt.

Wie genau verbessert Deine Arbeit diese Prozesse?

Pratyush Agnihotri: Jeden Tag produzieren Millionen Nutzer riesige Datenmengen. Mich beschäftigt die Frage, wie man diese Live-Datenströme parallel verarbeiten kann („Parallel Stream Processing“). Zum Beispiel kann man die Daten an mehrere Ressourcen verteilen, welche die Abfragen verarbeiten und gleichzeitig die Ergebnisse liefern. Dies erlaubt, sofort fundierte Entscheidungen zu treffen – anstatt auf die jeweiligen Ergebnisse erst warten zu müssen wie beim sequenziellen Vorgehen per Datenbank.

Was reizt Dich an diesem Thema?

Pratyush Agnihotri: Wir sollten uns heutzutage nicht mehr auf Excel-Tabellen beschränken. Echtzeit-Daten sind so etwas wie das neue Öl: Wer die Daten hat, hat die Macht. Deshalb arbeite ich daran, wie Echtzeit-Daten effizient verarbeitet und das Ergebnis an den Benutzer weitergegeben werden kann. Die Middleware und Systeme zur Verarbeitung komplexer Ereignisse („Data Stream Processing“, DSP) sind hier der Schlüssel. Außerdem finde ich es wichtig, über den Energieverbrauch nachzudenken, wenn wir die Rechenzentren vergrößern und immer mehr Cloud-Server implementieren. Wir sollten die uns zur Verfügung stehenden Rechenressourcen besser nutzen. Meine Lösung hilft dabei und ist ein Schritt in Richtung grüner Energie, denke ich.

„Ich finde es wichtig, über den Energieverbrauch nachzudenken, wenn wir die Rechenzentren vergrößern und immer mehr Cloud-Server implementieren.“

In Deiner Forschung beziehst Du Dich zum Beispiel auf den chinesischen Online-Marktplatz AliBaba. Dort müssen 3 Millionen Transaktionen pro Sekunde verarbeitet werden. Eine riesige Arbeitslast für die Server! Wie kommt hier Dein Ansatz der parallelen Verarbeitung von Datenströmen ins Spiel?

Pratyush Agnihotri: Die Nutzer sollen eine reibungslose Erfahrung beim Einkaufen haben und gleichzeitig möchte ich sicherstellen, dass die zur Verfügung stehenden Ressourcen möglichst effektiv genutzt werden. Deshalb arbeite ich an einem automatischen Vorhersage-Modell. Dieses hilft zu entscheiden, ob eine parallele Verarbeitung mit den verfügbaren Instanzen durchgeführt werden kann, ob die Instanzen mit einer anderen Konfiguration ausgestattet werden müssen, oder ob eine Lastverschiebung auf zusätzliche Instanzen nötig ist.

Welche Herausforderung gibt es dabei?

Pratyush Agnihotri: Die Entscheidung für den geeigneten Parallelitäts-Mechanismus ist nicht einfach, denn die Serverlast ändert sich ständig. Man hat verschiedene Arten von Abfragen von den Nutzern. Zum Beispiel ist die Last zur Weihnachtszeit sehr viel höher als an normalen Arbeitstagen. Wie setzt man die vorhandenen Rechenressourcen also effektiv ein? Wenn es kein Vorhersage-Modell gibt, werden eine Menge Ressourcen verschwendet – was letztlich viel Energie und Geld kostet.

Ist es also eine Art Algorithmus, an dem Du arbeitest?

Pratyush Agnihotri: Es ist nicht nur ein Algorithmus, es ist ein ganzes System. Ich nenne es „ZeroTune“. Dieses kann Abfragen bewerten, mithilfe des Modells die Kosten für eine bestimmte Konfiguration vorhersagen und gleichzeitig auch bestimmen, welcher Grad an Parallelität für diese Konfiguration geeignet ist.

Was bedeutet es denn eigentlich, wenn Du von „Kosten“ sprichst? Damit ist ja nicht nur ein monetärer Wert gemeint, oder?

Pratyush Agnihotri: Dabei kann es sich zum Beispiel um Latenz, Durchsatz oder Bandbreite handeln. Im Moment konzentriere ich mich auf Latenz und Durchsatz, um zu beweisen, dass ein generisches Kostenmodell möglich ist, welches für eine Vielzahl von komplexen und einfachen Abfragen funktioniert. Es ist aber nicht darauf beschränkt. Man kann ZeroTune mit jeder beliebigen Abfrage und jeder beliebigen Leistungskennzahl feinabstimmen.

„Man kann ZeroTune mit jeder beliebigen Abfrage und jeder beliebigen Leistungskennzahl feinabstimmen.“

Deine Forschungsidee hört sich an, als könnte sie vielen Firmen helfen, ihre Rechenressourcen sehr viel effizienter einzusetzen. Planst Du, ein Start-Up mit ZeroTune zu gründen?

Pratyush Agnihotri: Nein, noch nicht. Es ist aber definitiv eine gute Lösung und die Idee ist neu, weil es noch so viele Forschungslücken gibt. Im Moment befinden wir uns allerdings noch auf akademischer Ebene und versuchen, weitere Vorhersage-Modelle zu entwickeln, die in ZeroTune integriert werden könnten. Eine Demo haben wir bereits im Deutschen Forschungszentrum für Künstliche Intelligenz DFKI vorgestellt. Wir werden sehen, ob es sich in Zukunft als Start-Up eignet.

Kannst Du die Forschungslücken näher beschreiben?

Pratyush Agnihotri: Die bisherigen Vorhersage-Modelle beziehen sich im Wesentlichen auf Abfragen, die sequenziell verarbeitet werden. Die Forschungslücke besteht also darin, die Parallelisierung zu untersuchen, und das speziell bei heterogenen Ressourcen. Damit sind Ressourcen mit unterschiedlichen Konfigurationen gemeint. Bisher gibt es kein generisches Modell, das die Kosten für diese heterogenen Ressourcen insbesondere bei der parallelen Verarbeitung von Datenströmen in Echtzeit vorhersagen kann. Dies stellt eine große Herausforderung dar, und daran arbeiten wir unter anderem mithilfe von Graph Neural Networks, einer Methode des maschinellen Lernens.

Deine Forschung ist Teil des SFB MAKI. Wie kommen die Ideen von Transition und Adaption ins Spiel?

Pratyush Agnihotri: Das ZeroTune-System hilft anhand des generischen Vorhersage-Modells dabei zu entscheiden, welcher Grad an Parallelität vorteilhaft ist – je nachdem, an welchem Szenario gerade gearbeitet wird. Dabei muss zwischen verschiedenen Parallelisierungs-Mechanismen gewechselt werden. Manchmal macht es auch gar keinen Sinn, die Datenströme parallel zu verarbeiten. Das Modell kann ebenfalls vorhersagen, ob eine sequenzielle Verarbeitung sinnvoller wäre. Mein Ziel ist es, dass die Wechsel zwischen den Mechanismen mit dem ZeroTune-System automatisch eingestellt werden.

Was sind die Herausforderungen beim Trainieren des generischen Vorhersage-Modells?

Pratyush Agnihotri: Eine der Herausforderungen bei der Entwicklung eines solchen Modells, welches ich „Zero-Shot-Modell“ nenne, ist, dass man verschiedene Datensätze sammeln muss. Die Datenströme sind ziemlich groß und ändern sich ständig. Man muss also beim Trainieren des Algorithmus sehr viele Szenarien sammeln, um das Vorhersage-Modell zu verallgemeinern. Damit sich das am Ende auch lohnt, muss das Modell sehr effizient trainiert werden, und die Trainingsdaten müssen eine gute Qualität haben. Dies haben wir erreicht, indem wir aussagekräftige Parallelitätsgrade gesammelt haben, die sich zuvor in analytischen Ansätzen als nützlich erwiesen haben. Unsere Trainingsdaten sind sowohl realistisch als auch repräsentativ für aktuelle Szenarien. Unsere Arbeit zu dem Thema haben wir mit Erfolg bei der renommierten IEEE International Conference on Data Engineering eingereicht.

Pratyush Agnihotri bei der IEEE International Conference on Data Engineering in Utrecht. Foto: privat

Was sind für Dich die nächsten Schritte?

Pratyush Agnihotri: Bisher handelt es sich bei ZeroTune um ein Offline-Modell, welches auf überwachte Weise trainiert wurde. Nun untersuchen wir, wie man ein maschinelles Lernmodell entwerfen kann, das auch online, also mit Echtzeit-Daten, trainiert wird. Dann könnte der Grad an Parallelität automatisch angepasst werden. Der letzte Schritt ist ziemlich kompliziert, weil es um mehrere Operatoren geht, die alle im laufenden Betrieb abgestimmt und geändert werden müssen.

Weiterhin viel Erfolg und vielen Dank für den spannenden Einblick in Deine Forschung hier bei KOM!


Zur Person: Pratyush Agnihotri

Pratyush Agnihotri arbeitet seit Juni 2021 als Doktorand zur parallelen Verarbeitung von Datenströmen im Multimedia Communications Lab und ist hauptsächlich mit dem Teilprojekt C2 zu ereignisbasierten Kommunikationssystemen des DFG-Sonderforschungsbereichs MAKI – „Multi-Mechanismen-Adaption für das künftige Internet“ verbunden. Zuvor arbeitete er als Softwareentwickler bei der Axxessio GmbH, Darmstadt, in den Anwendungs-und Forschungsbereichen Internet of Things (IoT), Smart City und Sprachassistenz.

Mehr zum Thema

Beitragsbild: Dall.e AI Image Generator / Prompt: Pratyush Agnihotri