Building an Analytical Database Engine (Summer 2015)

The goal of this lab is to develop and optimize certain features of a database engine (especially OLAP operations) in C++, C#, or a JVM based language.

Depending on the first results and individual preferences, the advanced tasks can be chosen individually.

Basic content:
  • Logical Data Structures, Physical Data/Storage Structures, Buffer Management
  • Query Processing and Operators (Projection, Selection, Join, Sort, ...)
  • Scheduler, Cost Functions and Query Optimizer
  • Performance Measurement and Optimization

Possible extensions depending on individual preferences:
  • Data compression
  • Inter- and intra-query parallelisation
  • Distribution of the query processing and the data on different machines
  • Compilation of queries to native code/byte code at runtime
  • Index structures


The next meeting (26.05.15, 5pm) will take place in D113!

The next meeting (12.05.15) will take place in D113!

The next meeting (28.04.15) will take place in E203!

The first data example and the slides are online!

Updated page for Summer 2015


Please check the schedule regularly, as we might change things on demand.

Date Topic Slides
21.04.2015 First Meeting Slides
28.04.2015 First steps... Slides
12.05.2015 Some operators...
26.05.2015 More operators... and benchmarking
09.06.2015 Query optimization...
23.06.2015 Advanced stuff...
14.07.2015 TBA
04.08.2015 Final presentation


  • Ramakrishnan/Gehrke Database Management Systems - 3rd Edition


Please register via TUCaN and write us an email.


  • Programming skills
  • Basic understanding of databases
  • Creativity
  • Willingness to work in a team


The lab will be held in English. All students' presentations and texts can either be in English or German (English preferred).

Course Information

TUCaN link TUCaN
Meeting Tuesday 15:00-16:00 in S202 A313
Area Databases
Course Type Lab (de: Praktikum)
CP (SWS) 6 (4)
Language English/German
Office hours by arrangement


Alexander Frömmgen Max Lehn
A A A | Print | Contact | Legal note | Search