CMU 15-721: Advanced Database Systems
The sequel to CMU 15-445, diving into cutting-edge database system internals and research.
About This Course
CMU 15-721 is Andy Pavlo's advanced database course, focused on modern in-memory database systems. It covers the state-of-the-art in database engine design, including techniques used by systems like DuckDB, ClickHouse, and Snowflake.
Each semester focuses on a specific theme (e.g., in-memory OLTP, analytical systems) and covers the latest research papers in the field.
What You Will Learn
- In-Memory Databases: Architecture, memory management, DRAM vs. NVM
- MVCC: Implementation strategies, garbage collection, version storage
- Query Compilation: JIT compilation, vectorized vs. compiled execution
- Vectorized Execution: SIMD, batch processing, column stores
- Parallel Execution: Intra-query parallelism, morsel-driven parallelism
- Networking: Database protocols, data serialization, zero-copy transfers
- Query Optimization: Adaptive optimization, machine learning for query planning
- Modern Analytical Systems: Lakehouse architectures, disaggregated storage
Prerequisites
CMU 15-445 or equivalent database internals course. Strong C++ skills.
External Links
Course content belongs to Carnegie Mellon University.