Nummer

INFO-4143
Titel

Design and Implementation of Database System Internals
Lehrform(en)

Vorlesung, Übung
ECTS 6
Arbeitsaufwand
- Kontaktzeit
- Selbststudium
Arbeitsaufwand:
180 h
Kontaktzeit:
60 h / 4 SWS
Selbststudium:
120 h
Veranstaltungsdauer 1 Semester
Häufigkeit des Angebots Unregelmäßig
Unterrichtssprache Deutsch und Englisch
Prüfungsform

Klausur

Inhalt

- Einführung in Interna des Datenbanksystems DuckDB
- Komprimierte Speicherformate für Tabellendaten
- Lesen und Analyse komplexer Anfragepläne
- Dekorrelation verschachtelter Anfragen
- Vektorisierung in der Anfrageauswertung
- Pipelining und Multi-Threading
- Indexierung von Tabellen (Radix-Bäume)
- Implementation von Anfrageoperatoren (Join, Sort)
- Persistenz
- Transaktionen

Qualifikationsziele

Diese Vorlesung studiert ausgewählte Internas von DuckDB, einem modernen Datenbanksystem, das tabellarische Daten (Relationen) sehr effizient verarbeiten kann. Die Studierenden verstehen, wie DuckDB große Datenmengen auf Sekundärspeichern (etwa SSDs) oder im RAM komprimiert epräsentiert. Die Vorlesung diskutiert Pläne für komplexe SQL-Anfragen, deren Vereinfachung und Optimierung. Zur parallelen Auswertung dieser Anfragen baut DuckDB Pipelines von Operatoren auf, durch die jeweils ganze Vektoren von Daten geschleust werden. Die Vorlesung diskutiert sowohl diese Pipelines als auch die Realisierung von Operatoren wie Join, Sortierung oder den gezielten Zugriff auf Daten mittels
Radix-Bäumen. DuckDB bewahrt im Mehrbenutzerbetrieb und auch bei Systemausfall die Integrität von Daten—die Studierenden erlernen die grundlegenden Konzepte, mittels derer das System diese Zusicherung geben kann.

Vergabe von Leistungspunkten/Benotung
Lehrform
Status
SWS
LP
Prüfungsform
Prüfungsdauer
Benotung
Berechnung
Modulnote (%)
Vorlesung
V
o
2
4.0
K
90
b
100
Übung
Ü
o
2
2.0
ub
Teilnahmevoraussetzungen Es gibt keine besonderen Voraussetzungen.
Dozent/in Grust
Literatur / Sonstiges

Teilnahmevoraussetzungen (optimal, aber optional):
- Vorlesung "Tabular Database Systems" (INF 3132)
- Grundlegende Kenntnisse in C oder C++
- Grundlegende Kenntnisse in Python

---

Prerequisites (ideal, but optional):
- Lecture "Tabular Database Systems" (INF 3132)
- Basic knowledge of C or C++
- Basic knowledge of Python

Zuletzt angeboten nicht bekannt
Geplant für Wintersemester 2025
Zugeordnete Studienbereiche INFO-INFO, INFO-PRAK, MEDI-APPL, MEDI-INFO, ML-CS