Advanced Database Systems

Course ID 15721

Description This course is a comprehensive study of the internals of modern database management systems. It will cover the core concepts and fundamentals of the components that are used in large-scale analytical systems (OLAP). The class will stress both efficiency and correctness of the implementation of these ideas. The course is appropriate for graduate students in software systems and for advanced undergraduates with straight up dirty systems programming skills.

Key Topics
Databases

Required Background Knowledge
Software Systems

Course Relevance
Software Systems

Course Goals
This is a graduate-level course on the internals of database management systems. This course has a heavy emphasis on programming projects. There are also readings assigned for each class and a final exam. Upon successful completion of this course, the student should be able to:

* Apply and customize state-of-the-art implementation techniques for single-node database management systems following modern coding practices.
* Identify trade-offs among database systems techniques and contrast alternatives for both on-line transaction processing and on-line analytical workloads.
* Develop and justify design decisions in the context of a high-performance database system.
* Implement and evaluate complex, scalable database systems, with emphasis on providing experimental evidence for design decisions.
* Interpret and comparatively criticize state-of-the-art research talks and papers, with emphasis on constructive improvements.

Learning Resources
Papers + YouTube

Assessment Structure
15% — Reading Assignments & Reviews
10% — Lecture Notes
60% — Group Project
15% — Final Exam"" 15% — Reading Assignments & Reviews
10% — Lecture Notes
60% — Group Project
15% — Final Exam

Extra Time Commitment
n/a

Course Link
https://15721.courses.cs.cmu.edu/