direkt zum Inhalt springen

direkt zum Hauptnavigationsmenü

Sie sind hier

TU Berlin

Inhalt des Dokuments

Master-Projekt: Verteilte Systeme

Inhalt

Datenströme (data streams) kommen heutzutage immer öfter durch den rasanten Fortschritt der Technologien vor. Einige Beispiele sind Soziale Netzwerke (wie Facebook, Twitter), Anwendungen (wie Netflix, Spotify), sowie Sensoren, die vermehrt durch die Industrie 4.0 und IoT in den Alltag sich integrieren. Charakteristiken sind eine hohe Frequenz der Daten, die möglicherweise endlos lange gesendet werden und in Echtzeit analysiert werden sollen.

Hierzu wurde am CIT das Data Stream Processing Framework Bitflow entwickelt, welches das Analysieren von beliebigen Datenströmen ermöglicht. Mit Hilfe von Bitflow lassen sich Analysepipelines bauen, welche zum Transformieren, Algorithmischen Analyse oder Visualisierung von Echtzeitdatenquellen genutzt werden können. Daten können zudem auch zwischen verschiedenen Pipelines über das Netzwerk geschickt werden, sodass verteilte Analysen ermöglicht werden können. Pipelines kann man in den Sprachen Go, Java und Python entwickeln und können ebenfalls über das Netzwerk im selben Datenformat zu größeren Analysen verknüpft werden.

Es wurden bereits verschiedene Algorithmen in den drei unterschiedlichen Programmiersprachen entwickelt und lassen sich auf der großen CIT Cloudinfrastruktur laufen lassen. Momentan müssen händisch die Kommunikationswege zwischen den verschiedenen Pipelines gebaut werde, welches sich mit Hilfe einer Orchestrierungsengine ändern soll.   

Ziel dieses Masterprojektes ist es eine Orchestrierungsengine zu bauen um Analysepipelines für Datenströme zu erstellen, verändern und überwachen zu können. Hierzu sollen folgende Aspekte im Laufe des Projektes bearbeitet werden:

  • Eine Grammatik zum Bau beliebiger Pipelines soll erstellt werden.
  • Agenten, die Pipelines anhand der Grammatik erstellen und ausführen können, sollen in den verschiedenen Sprachen entwickelt werden.
  • Ein Orchestrierung Service, welches mit den Agenten kommuniziert und ein Frontend zur Erstellung der Pipelines besitzt, soll ebenfalls entwickelt werden.

Folgende Technologien bzw. Sprachen werden hierfür genutzt:

  • Go, Java und Python (mindestens eine der Programmiersprachen sollte man sehr gut beherrschen)
  • Erstellung von Restful APIs zur Kommunikation
  • Beliebige Javascript Bibliotheken für das Frontend

Das Projektmanagement erfolgt mit Scrum ähnlichen Hilfsmitteln. Die Projektsprache ist Deutsch.

Studierende können je nach persönlichem Interesse ein oder mehrere Schwerpunktgebiete innerhalb des Projektes wählen.

Bitte melden Sie sich bis zum 8.10. bei Florian Schmidt, florian.schmidt@tu-berlin.de, um sich anzumelden.

Das erste Treffen findet am 18.10. von 15-16 Uhr im Raum EN-152 statt. Falls Sie an dem Tag nicht können, bitte Florian Schmidt bescheid geben.

Voraussetzungen

Solide Programmierkenntnisse in einer objekt-orientierten Programmiersprache, Interesse an verteilten Systemen und Big Data

Zusatzinformationen / Extras

Quick Access:

Schnellnavigation zur Seite über Nummerneingabe

Ansprechpartner

Florian Schmidt
+49 (30) 314 28306
Room E-N 101

Modulbeschreibungen