Navigation To modulepage
Display language

Data Management on Modern Hardware



#40804 / #5

Seit SoSe 2021

Fakultät IV

EN 7

Institut für Softwaretechnik und Theoretische Informatik

34351500 FG Datenbanksysteme und Informationsmanagement

Markl, Volker

Zeuch, Steffen

POS-Nummer PORD-Nummer Modultitel
38129 Fehler in der Verknüpfung: Nicht gefunden
43047 Fehler in der Verknüpfung: Nicht gefunden

Learning Outcomes

Traditionally, database systems managed databases that were primarily stored on secondary storage and only a small part of the data could fit in main memory. Therefore, disk I/O was the dominating cost factor. Nowadays, it is possible to equip servers with several terabytes of main memory, which allows us to keep databases in main memory to avoid the disk I/O bottleneck. Therefore, the performance of database systems became limited by memory access and processing power. This course will teach students the fundamentals of efficient data processing in main-memory database systems using techniques optimized for main memory (e.g., column stores and query compilation) and modern processor capabilities (e.g., SIMD-based database algorithms, GPU co-processing). Furthermore, this course will also teach how other data management systems beyond relational databases exploit modern hardware to speed-up processing.


The course is split into two parts, each covering roughly one half of the semester. During the first part, the students learn the fundamentals of cache-efficient storage and processing models. This includes columnar storage and query processing, compression, vector-at-a-time processing, query compilation, and transaction processing. In the second part, students learn the basics of parallel data processing on modern CPUs and co-processors (e.g., GPUs) for typical database operators, including optimizations such as SIMD and NUMA-awareness. Furthermore, the second part will also introduce optimizations for operators that go beyond relational algebra. The course consists of a lecture and theoretical, written exercises.

Module Components


All Courses are mandatory.

Course Name Type Number Cycle Language SWS
In-Memory Databases On Modern Hardware IV 3435 L 9195 SS No information 4

Workload and Credit Points

In-Memory Databases On Modern Hardware (IV):

Workload description Multiplier Hours Total
Attendance 15.0 4.0h 60.0h
60.0h(~2 LP)

Course-independent workload:

Workload description Multiplier Hours Total
Exam preparation 1.0 30.0h 30.0h
Graded problem sheets 1.0 60.0h 60.0h
Preparation/Consolidation IDB 15.0 2.0h 30.0h
120.0h(~4 LP)
The Workload of the module sums up to 180.0 Hours. Therefore the module contains 6 Credits.

Description of Teaching and Learning Methods

Lectures are accompanied by individual exercises to practically rehearse the theory taught in the lectures. The course will be given in English.

Requirements for participation and examination

Desirable prerequisites for participation in the courses:

This course is an advanced course for master students with focus on database systems and information management. In contrast to the introduction of database systems (MPGI5/DBS/Informationssystemse&Datenanalyse), which looks at database systems from an application programmers point of view, this class focuses on the internals of in-memory database systems and various optimizations for efficient query processing on modern hardware. It is useful (but not required) to attend the course Database Technology (DBT) prior to this course. To participate, students are required to have successfully completed a Bachelor in computer science with a focus on database systems (participation in the Datenbankpraktikum, Datenbankprojekt). Knowledge of data modeling, relational algebra, and SQL as well as a very good command of Java, or possibly C/C++/C#, programming is required to participate in the course. Due to capacity reasons, the class is limited to at most 60 participants.

Mandatory requirements for the module test application:

No information

Module completion



Type of exam

Portfolio examination

Type of portfolio examination

100 points in total



Test elements

Name Points Categorie Duration/Extent
(Deliverable assessment) Assessment of 4 homework exercises with 5 pts 20 written 4x15h = 60h
(Examination) End term test 40 written 60 min
(Examination) Mid term test 40 written 60 min

Grading scale

Test description (Module completion)

No information

Duration of the Module

This module can be completed in one semester.

Maximum Number of Participants

The maximum capacity of students is 60.

Registration Procedures

Students are required to register via the DIMA course registration tool before the start of the first lecture ( Within the first six weeks after commencement of the lecture, students will have to register for the course at QISPOS (university examination protocol tool) and ISIS (course organization tool) in addition to the registration at the DIMA course registration tool.

Recommended reading, Lecture notes

Lecture notes

Availability:  unavailable

Electronical lecture notes

Availability:  unavailable


Recommended literature
Alfons Kemper, André Eickler Datenbanksysteme. Eine Einführung.10., aktualisierte und erweiterte Auflage, Oldenbourg Verlag, 2015.
Daniel Abadi, Peter A. Boncz, Stavros Harizopoulos, Stratos Idreos, Samuel Madden: The Design and Implementation of Modern Column-Oriented Database Systems. Foundations and Trends in Databases 5(3): 197-280 (2013)
Hasso Plattner. 2014. A Course in In-Memory Data Management: The Inner Mechanics of In-Memory Databases. Second Edition. Springer Publishing Company, Incorporated.
John L. Hennessy, and David A. Patterson. Computer architecture: a quantitative approach. Elsevier, 2012.

Assigned Degree Programs

This module is used in the following Degree Programs (new System):

This moduleversion is used in the following modulelists:


No information