Schedule

Week Module Topic Readings Code
Chapter 0: Introduction
1 1 Lecture 01: Relational Databases § 1
1 2 Lecture 02: BuzzDB § 2 [v1]
Chapter 1: Storage Management
2 3 Lecture 03: Storage Management § 12, 13 [v2] [v3] [v4] [v5]
2 3 Lecture 04: Smart Pointers and Pages § 12, 13 [v6] [v7] [v8]
3 4 Lecture 05: Slotted Page § 12, 13 [v9] [v10] [v11]
3 4 Lecture 06: File and Storage Management § 12, 13 [v12] [v13] [v14]
4 5 Lecture 07: Storage and Buffer Management § 12, 13 [v15] [v16]
5 5 Lecture 08: 2Q Policy § 12, 13 [v17] [v18]
6 6 Lecture 09: Multi-Threading and Synchronization § 12, 13 [bank]
6 6 Lecture 10: Database Configuration § 12, 13 [v23] [v24]
7 🖊️ Mid-Term Exam
Chapter 2: Access Methods
8 7 Lecture 11: Hash Tables [v25] [v26] [v27]
8 8 Lecture 12: Thread-Safe Hash Table § 14, 18 [v28] [v29] [v30]
9 9 Lecture 13: Range Query and Ordered Index § 14, 18 [v31] [v32]
9 9 Lecture 14: B+Trees § 14, 18 [v33]
10 10 Lecture 15: Trie § 14, 18 [trie] [bitset]
10 10 Lecture 16: Inverted Index and RTree § 14, 18 [inverted index] [rtree]
11 10 Lecture 17: ND RTree § 14, 18 [ndrtree]
12 10 Lecture 18: Learned Index § 14, 18 [regression] [neural network]
Chapter 3: Query Execution
13 11 Lecture 19: Query Execution § 14, 18 [v35] [v36] [v37]
13 12 Lecture 20: Select and Aggregation § 15 [v38] [v39] [v40]
14 13 Lecture 21: Query Parsing and Compilation § 15 [v41] [v42] [v43] [v44]
15 14 Lecture 22: Columnar Storage and Compression § 15 [columnar] [compression]
15 14 Lecture 23: Vectorized Execution and Course Retrospective § 15 [simd]
16 🖊️ Final Exam

NOTE: The schedule is tentative and is subject to change as the semester progresses.

Credits

These slide decks are derived from courses developed by Thomas Neumann and Andy Pavlo.