Schedule

No Date Topic Readings Code
Chapter 0: Introduction
1 Aug 20 Lecture 01: Relational Databases § 1
2 Aug 22 Lecture 02: BuzzDB § 2 [v1]
Chapter 1: Storage Management
3 Aug 27 Lecture 03: Storage Management § 12, 13 [v2] [v3] [v4] [v5]
4 Aug 29 Lecture 04: Smart Pointers and Pages § 12, 13 [v6] [v7] [v8]
5 Sep 03 Lecture 05: Slotted Page § 12, 13 [v9] [v10] [v11]
6 Sep 05 Lecture 06: File and Storage Management § 12, 13 [v12] [v13] [v14]
7 Sep 10 Lecture 07: Storage and Buffer Management § 12, 13 [v15] [v16]
8 Sep 12 Lecture 08: 2Q Policy § 12, 13 [v17] [v18]
9 Sep 17 Lecture 09: Multi-Threading and Synchronization § 12, 13 [bank]
10 Sep 19 Lecture 10: Database Configuration § 12, 13 [v23] [v24]
11 Sep 24 ⏳ Buffer Space — No Class
12 Sep 26 🌀 Hurricane Helene — No Class
Chapter 2: Access Methods
13 Oct 01 Lecture 11: Hash Tables § 14, 18 [v25] [v26] [v27]
14 Oct 03 📝 Mid-Term Exam
15 Oct 08 Lecture 12: Thread-Safe Hash Table § 14, 18 [v28] [v29] [v30]
16 Oct 10 Lecture 13: Range Query and Ordered Index § 14, 18 [v31] [v32]
17 Oct 15 🍂 Fall Break — No Class
18 Oct 17 Lecture 14: B+Trees § 14, 18 [v33]
19 Oct 22 Lecture 15: Trie § 14, 18 [trie] [bitset]
20 Oct 24 Lecture 16: Inverted Index and RTree § 14, 18 [inverted index] [rtree]
21 Oct 29 Lecture 17: ND RTree § 14, 18 [ndrtree]
22 Oct 31 Lecture 18: Learned Index § 14, 18 [regression] [neural network]
Chapter 3: Query Execution
23 Nov 05 Lecture 19: Query Execution § 14, 18 [v35] [v36] [v37]
24 Nov 07 Lecture 20: Select and Aggregation § 15 [v38] [v39] [v40]
25 Nov 12 Lecture 21: Query Parsing and Compilation § 15 [v41] [v42] [v43] [v44]
26 Nov 14 Lecture 22: Columnar Storage and Compression § 15 [columnar] [compression]
27 Nov 19 Lecture 23: Vectorized Execution and Course Retrospective § 15 [simd]
28 Nov 21 🚧 Project Presentations
29 Nov 26 ⏳ Buffer Space — No Class
30 Nov 28 🦃 Thanksgiving Break — No Class
31 Dec 03 ⏳ Buffer Space — No Class
32 Dec 05 📝 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.