Datenbanksysteme und moderne CPU-Architekturen
Content
- This lecture covers the implementation of database systems, including how to leverage modern hardware architectures.
- The lectures are held in English.
- In the Exercises for this lecture, you will have the chance to build a tiny database system from scratch.
Prerequisites
- Grundlagen der Informatik
- Grundlagen Datenbanksysteme (GDB) (IN0008)
Organization and Exam
- First Lecture: Tuesday, 16.04.2024
- Lecture + Exercises: 2pm – 5pm
- Room: Hörsaal im Galileo
- GitLab (you need to request access to the group to see the projects)
- Mattermost
- Bonus: There are 6 optional programming assignments. If you complete 5 or more of the programming assignments, you will receive a grade step bonus (0.3/0.4 bonus) on the exam grade (iff your exam grade is between 1.3 and 4.0).
- Example: A student completes 5 programming assignments and gets 1.7 in the final exam. His/Her final grade will be 1.3.
- Example 2: A student completes 5 programming assignments and gets 1.3 in the final exam. His/Her final grade will be 1.0.
- Exam: Written exam, 90 minutes.
- Exam date and location: please check TUMOnline
- Exam registration: via TUMonline
- Retake exam (Wiederholungsprüfung): There will be no retake exam (Wiederholungsprüfung). The next exam will probably take place at the end of SS 2025.
Literature
- Theo Härder, Erhard Rahm. Datenbanksysteme: Konzepte und Techniken der Implementierung. Springer, Berlin; 2nd ed.
- Hector Garcia-Molina, Jeff Ullman, Jennifer Widom. Database Systems: The Complete Book
- D. E. Knuth. The Art of Computer Programming Volume III
- Joseph M. Hellerstein, Michael Stonebraker, James Hamilton. Architecture of a Database System
- Franz Faerber, Alfons Kemper, Per-Åke Larson, Justin J. Levandoski, Thomas Neumann, Andrew Pavlo. Main Memory Database Systems
Lecture Slides
- Introduction
- Storage
- Access Paths
- Transactions and Recovery
- Set-Oriented Processing
- Algebraic Operators
- Code Generation, Parallelism
- Main-Memory Databases
- All Slides
Exercise Slides
- Introduction
- Hexdump for slotted pages (Little Endian) (Big Endian)
- Exercise slides
Tools
Programming Assignments
- Programming homework includes implementing the concepts learned in the lecture in C++, previous systems programming experience recommended
- The assignments are managed via our GitLab
- Please join us on Mattermost
To get the bonus, please include your name (as displayed in TUMonline) and your matriculation number in the student_info.txt file of at your project in the following format:
Name: Lastname, Firstname
Matriculation number: 03xxxxxx
If your submission should be featured on the leaderboard, also add a name to the student_info.txt file:
Board: name_for_leaderboard