
Theoretischer Ansatz unserer Prozesse
Plan
Infrastructure

Gruppe C
11/10/2021
Wir haben uns Gedanken über unsere Architektur gemacht und darüber, welche Schritte die Daten, wie durchlaufen müssen. Außerdem haben wir uns überlegt, was die Plattformen und Anwendungen machen und wofür genau wir diese verwenden möchten.
Dieses System ist in zwei grundlegende Prozesse eingeteilt. Zum einen gibt es die "Model-Creation"-Umgebung, welche das Modell-Training und alle dazugehörigen Schritte umfasst. Zum anderen gibt es noch die Produktionsumgebung, in der das angenommene Modell in die Anwendung eingebettet wird.
Der übergreifende Prozess:
Zunächst wird 'Model Creation' angestoßen. Der Prozess kann entweder von der Delta Lake-Seite oder der TFX-Seite aus gestartet werden.Dabei kommt es darauf an, ob auch Änderungen an den Daten vorgenommen wurden oder nicht. Das Modell wird trainiert und der TFX-Evaluator entscheidet, ob das Modell in die produktive Umgebung geschoben wird oder nicht. Sollte das Modell das 'BLESSING' erhalten, ersetzt dieses das vorläufige Modell, wodurch es schließlich von unserer Anwendung zur Konzertempfehlung verwendet wird.
Model-Creation-Prozess

Die Abbildung zeigt den Prozess für die Entwicklung unseres Modells. Oben Links haben wir unsere APIs, die uns die benötigten Daten liefern. Diese Daten werden in unseren Delta Lake (blauer Kasten) gespeichert und durchlaufen in diesem die verschiedenen Quality Levels. Die Daten im Platin-Level sind dann so aufbereitet, dass diese in TFX (orangener Kasten) übertragen werden können. In diesem durchlaufen die Daten die konfigurierten Komponenten unserer TFX-Pipeline. Wenn die Daten die Pipeline durchlaufen haben und das Modell vom Evaluator genehmigt wird, wird das Model in die Produktivumgebung überführt.
Produktivumgebung

Das Modell wurde nun an die Produktivumgebung übergeben und kann von der Anwendung genutzt werden. Die Konzertvorschläge werden im Batch ausgeführt. Die Konzertanfragen von der Webseite werden samt Userinformationen in der Firebase-Datenbank abgespeichert. Wird die Deltalake-Pipeline ausgeführt, werden die neusten Userdaten mit der Firebase-API geholt und im Bronze-Level des Delta Lakes abgespeichert, wo diese den normalen Aufbereitungsprozess durchlaufen. Im Platin-Level stehen die Daten dann im 'ready-to-serve' Format zu Verfügung, welches vom Produktivmodell verwendet wird, um Genrepräferenzen der User zu ermitteln. Wenn die Genres ermittelt wurden, wird aus dem Pool an Konzerten eine Konzertempfehlung passend zu den Genrepräferenzen erstellt. Die Ergebnisse werden schließlich wieder auf die Firebase-Datenbank hochgeladen, in der diese dann von der Webseite aufbereitet werden und User ihre Konzertempfehlung einsehen können.