Theses and Assistant Positions

This page lists our current offerings for bachelor's and master's theses as well as open student research assistant positions. Besides, you can always ask us about further theses and positions. Usually, they are strongly connected to our current research interest which you can view at the Projects page. Furthermore, the pages of the scientific staff show their respective research topics.

Also, you can attend the weekly AG Databases to find out about interesting topics.

Entwurf und Implementierung von C-chain, einer Alternativen zu Blockchain

C-chain ist eine hocheffiziente Alternative zu Blockchain, die von Prof. Bayer entwickelt wurde. Für die Basistechnologie gibt es eine ausgereifte Implementierung als Android App. Diese soll im ersten Schritt auf iPhone/iOS portiert werden. Der Android Code steht dafür zur Verfügung.

Zusätzlich soll eine konkrete Anwendung prototypisch implementiert werden. Diese Anwendung steht noch nicht fest und kann nach dem Interesse von BearbeiterIn bestimmt werden. Prof. Bayer betreut diese Arbeit persönlich und intensiv mit wöchentlichen Besprechungen, bei Interesse bitte Email an

Contact Prof. Rudolf Bayer (
Type Bachelor's thesis, Master's thesis
Begin Sofort

Bachelor's Thesis in Geospatial Data Processing

The goal of the Bachelor's thesis is to mathematically derive lower and upper precision bounds for discretizations of latitude/longitude coordinates. For further information, please send us an email.

Contact Harald Lang ( )
Andreas Kipf ( )
Type Bachelor's thesis
Languages/Technologies Discrete Mathematics, Numerical Programming, C/C++ (basics)

Version Control Systems with DBMS

The integration of version control systems in database management systems would help users in different use cases like updating collected data or maintaining a wiki.

We are looking for a student to design a version control system which can be implemented in or on top of a relational database system like Postgres or HyPer. Further, a prototypical implementation should be created to evaluate the performance of the designed approach. The use case for the prototype will be Wikipedia and can be evaluated using some sample pages. Hence, the performance can be tested against the current versioning which is storing each revision as a new database entry. Having an experimental DBMS, created during a database lab or lecture, might be helpful.

Contact Maximilian E. Schüle ( )
Type Master's thesis
Languages/Technologies Prototypische Entwicklung in C++

Parallel Skyline Computation on GPUs and other strategies like using ART as index structure

Skyline is finding interesting points which are points that are not dominated by any other point of a large set of data points. A point can dominate another one when being better in at least one dimension or being at least as equal in all other dimensions.

We are looking for a student to improve skyline computation using efficient index structures like an ART or to program it for use on a GPU.

Contact Maximilian E. Schüle ( )
Type Bachelor's thesis, Master's thesis
Languages/Technologies C++, LLVM, CUDA

Data mining in databases

Data Mining is often done out of the database using external tools. This technique requires unnecessary overhead by extracting the data from the database. One feature, gradient descent, is missing in database systems which is why data mining is rarely done in database management systems

We are looking for a student to analyze different data mining tools and adapt their functionalities into a database management system. You could point out a special use case where you are interested in and test the performance of your tools integrated in the DBMS against certain data mining tools.

Contact Maximilian E. Schüle ( )
Type Bachelor's thesis, Master's thesis, guided research
Languages/Technologies C++, LLVM, experiences with data mining tools like Tensorflow, Apache Spark, etc. might be useful

In-database script processing

To process complex data, many applications load it from the database and process it on the application server or a client machine. This is, however, inefficient as much data must be transferred between the systems. Running data processing tasks directly in the database management system avoids this transfer and directly uses the server machine's compute power, thus, enabling big data processing.

We are looking for a student to design how modern scripting languages like Python or Julia can be embedded into high-performance databases. Further, a prototypical implementation should be created to evaluate the performance of the designed approach and to compare it to existing database scripting techniques as well as to client data processing.

Contact Maximilian E. Schüle ( )
Type Master's thesis, guided research
Languages/Technologies Prototypische Entwicklung in C++, Code-Generierung mit LLVM, Big Data-Verarbeitung in Python und Julia