Navigation

Leitung

-

Sekretariat

Claudia Martsfeld

Öffnungszeiten Sekretariat: 
Di/Do/Fr 9-15 h

Escherweg 2
26121 Oldenburg

+49(0)441-9722-201

+49(0)441-9722-202

Studentische Abschlussarbeiten

Bachelorarbeiten

  • Out of Order Processing (Bachelor Thesis)
    In der Datenstromverarbeitung geht man in der Regel davon aus, dass die Daten geordnet ankommen. Leider trifft dies in der Realität nicht immer so zu. In den vergangenen Jahren sind eine Reihe von Ansätzen entwickelt worden, die eine sog. out-of-Order-Verarbeitung erlauben. In dieser Arbeit sollen unterschiedliche Ansätze aus der Literatur untersucht und bzgl. ihrer Eignung bewertet werden. Anschließend soll eine Umsetzung/Anpassung und Evaluation im DSMS Odysseus erfolgen.

    Literatur z.B.:
    https://dl.acm.org/citation.cfm?id=1453890
  • Entwicklung einer Webanwendung zur Visualisierung von Energienetzen und Netzereignissen in Echtzeit (Bachelor Thesis)
    Ziel dieser Bachelorarbeit ist es eine Webanwendung zu entwickeln mit der es möglich ist komplexe Netze grafisch zu erstellen und mit eingehenden Datenströmen automatisiert und in Echtzeit zu verknüpfen. Als Anwendungsfall kann die Darstellung eines Stromnetzes dienen. Darzustellen sind in diesem Anwendungsfall dann Zustandsinformationen in Form von komplexwertigen Spannungen an den Knoten, aber auch komplexe Vertrauenswerte, für die es gilt geeignete Darstellungsformen zu finden. Generell sollte die Anwendung einfach zu bedienen und als Entwickler zu warten und zu erweitern sein.
  • Verbesserung der Planabschätzung durch die Integration manueller Quelleninformationen für Datenströme in Odysseus (Bachelor Thesis)
    Bei der Überführung von Anfragen in Ausführungspläne kann die Reihenfolge der Operatoren entscheident sein (Join-Order. Zur Entscheidung benötigt das Anfrageprozessor Informationen über die beteiligten Quellen. In Datenstromsystemen liegen oft wenige bis keine Informationen über die Quellen vor oder sind für den Anfrageprozessor nicht nutzbar.

    In dieser Arbeit soll ein Ansatz entwickelt werden, diese Beschreibungen manuell in den Prozess zu integrieren um auf diese Weise bessere Pläne zu genieren. Das Konzept soll in Odysseus implementiert und evaluiert werden.
  • Debuggen von Stream-Anwendungen mit Odysseus (Bachelor Thesis)
    Datenstromverarbeitung erfolgt in der Regel durch die Aneinanderreihung von Operatoren. Ähnlich wie bei der Entwicklung in höheren Programmiersprachen können hier aber zur Laufzeit unerwartete Fehler auftreten. In dieser Arbeit soll ein Werkzeug entwickelt werden, welches ähnlich zu Debuggern in Programmiersprachen das Debuggen von Anfragen in Odysseus ermöglicht.
  • Evaluierung der Skalierbarkeit von OdysseusNet mit Apache Kafka (Bachelor Thesis)
    Zur Zeit geschieht die Kommunikation und vor allem auch der Datenstromtransfer zwischen verschiedenen Instanzen über eine eigens entwickelte NodeCommunication-Klasse (siehe http://odysseus.informatik.uni-oldenburg.de:8090/display/ODYSSEUS/Developing+with+OdysseusNet für einen schematischen Überblick). Da OdysseusNet modular aufgebaut ist, besteht die Möglichkeit die NodeCommunication-Klasse durch etwas anderes zu ersetzen um verschiedene Implementierungen für verschiedene Szenarien verfügbar zu haben und/oder sie mit einander zu vergleichen. Eine mögliche andere Implementierung könnte in diesem Zusammenhang sein, die Datenströme über ein Publish/Subscribe-System (konkret Apache Kafka, http://kafka.apache.org/) zu verteilen und zu überprüfen, in wie weit sich dadurch die Performanz, die Ausfallsicherheit und die Skalierbarkeit ändern.
  • Sprache für Apache Flink Anfragen in Odysseus (Bachelor Thesis)
    Apache Flink kommt Odysseus (im Vergleich zu anderen Systemen) relativ nah. Um uns aber besser mit Flink vergleichen zu können, wäre es interessant, Flink-Anfragen in Odysseus formulieren zu können. Beispiel: // Stream of (sensorId, carCnt) val vehicleCnts: DataStream[(Int, Int)] = ... val tumblingCnts: DataStream[(Int, Int)] = vehicleCnts // key stream by sensorId .keyBy(0) // tumbling time window of 1 minute length .timeWindow(Time.minutes(1)) // compute sum over carCnt .sum(1) val slidingCnts: DataStream[(Int, Int)] = vehicleCnts .keyBy(0) // sliding time window of 1 minute length and 30 secs trigger interval .timeWindow(Time.minutes(1), Time.seconds(30)) .sum(1) (Quelle: http://flink.apache.org/) Aspekte: - Punkt-Notation - Reihenfolge von Parametern - Zugriff auf Parameter über Index - Integration mit xText
  • Data Provenance in Odysseus (Bachelor Thesis, Master Thesis)
    Data Provenance meint den Ursprung eines Datums/Events. Es soll demnach möglich sein, in einem Datenstrommanagementsystem ein Ausgabedatum/-event bis hin zu den Eingabedaten/Events, die zu seiner Existenz beigetragen haben, zurückzuverfolgen. Dies ist vor allem für Diagnosen, Debugging aber auch für eine Transparenz gegenüber Nutzern wichtig.

Masterarbeiten

  • Data Provenance in Odysseus (Bachelor Thesis, Master Thesis)
    Data Provenance meint den Ursprung eines Datums/Events. Es soll demnach möglich sein, in einem Datenstrommanagementsystem ein Ausgabedatum/-event bis hin zu den Eingabedaten/Events, die zu seiner Existenz beigetragen haben, zurückzuverfolgen. Dies ist vor allem für Diagnosen, Debugging aber auch für eine Transparenz gegenüber Nutzern wichtig.
Webmastt7cioer (marcvnkao.grawawumsndcj6her@98uol.deobv) (Stand: 18.02.2020)