Schedule

Date Topic Slides Notes Video
Aug 25 Lecture #00: Course Overview & Logistics (On-line Only)
Slides:
Download
Video:
Watch
Project:
C++ Primer
Aug 26 Lecture #01: Relational Model & Algebra
Slides:
Download
Notes:
Download
Video:
Watch
Readings:
Chapters 1-2, 27
Aug 28 Lecture #02: Modern SQL
Slides:
Download
Notes:
Download
Video:
Watch
Readings:
Chapters 3-5
Homework:
SQL
Sep 02 Labor Day — No Class
Sep 04 Lecture #03: Database Storage I
Slides:
Download
Notes:
Download
Video:
Watch
Flash Talk:
Heikki Linnakangas (Neon)
Readings:
Chapter 12.1-12.4, 13.2-13.3
Sep 09 Lecture #04: Database Storage II
Slides:
Download
Notes:
Download
Video:
Watch
Readings:
Chapter 24.2
Project:
Buffer Pool Manager
Sep 11 Lecture #05: Storage Models & Compression
Slides:
Download
Video:
Watch
Flash Talk:
Xiang Fu (StarTree)
Readings:
Chapter 11.2, 13.6
Homework:
Storage
Sep 16 Lecture #06: Memory Management
Slides:
Download
Readings:
Chapter 13.2-13.5
Sep 18 Lecture #07: Hash Tables
Flash Talk:
Molham Aref (RelationalAI)
Readings:
Chapter 14.5, 24.5
Sep 23 Lecture #08: Indexes & Filters I
Readings:
Chapter 14.1-14.4
Sep 25 Lecture #09: Indexes & Filters II
Flash Talk:
Ed Huang (PingCAP TiDB)
Readings:
Chapter 14.1-14.4
Homework:
Indexes & Filters
Sep 30 Lecture #10: Index Concurrency Control
Readings:
Chapter 18.10.2
Project:
Database Index
Oct 02 Lecture #11: Sorting & Aggregations Algorithms
Flash Talk:
Drew Banin (dbt Labs)
Readings:
Chapter 15.4-15.5
Oct 07 Lecture #12: Joins Algorithms
Readings:
Chapter 15.4-15.6
Oct 09 Mid-Term Exam
Oct 14 Fall Break — No Class
Oct 16 Fall Break — No Class
Oct 21 Lecture #13: Query Execution I
Readings:
Chapter 15.1-15.3, 15.7
Oct 23 Lecture #14: Query Execution II
Flash Talk:
Robert Schulze (ClickHouse)
Readings:
Chapter 22
Homework:
Query Execution
Oct 28 Lecture #15: Query Planning & Optimization
Readings:
Chapter 16
Oct 30 Lecture #16: Concurrency Control Theory
Flash Talk:
Mosha Pasumansky (Firebolt)
Readings:
Chapter 18
Nov 04 Lecture #17: Two-Phase Locking Concurrency Control
Readings:
Chapter 18.1-18.3, 18.9
Nov 06 Lecture #18: Timestamp Ordering Concurrency Control
Flash Talk:
Etienne Dilocker (Weaviate)
Readings:
Chapter 18.5-18.6
Homework:
Concurrency Control
Nov 11 Lecture #19: Multi-Version Concurrency Control
Readings:
Chapter 18.7-18.8
Project:
Concurrency Control
Nov 13 Lecture #20: Database Logging
Flash Talk:
TBA (Confluent)
Readings:
Chapter 19.1-19.8
Nov 18 Lecture #21: Database Recovery
Readings:
Chapter 19.1-19.9
Nov 20 Lecture #22: Introduction to Distributed Databases
Flash Talk:
Jonathan Ellis (DataStax)
Readings:
Chapter 20.4-20.5, 21, 23.1-23.4
Nov 25 Lecture #23: Distributed OLTP Database Systems
Readings:
Chapter 20.4-20.5, 21, 23.1-23.4
Nov 27 Thanksgiving — No Class
Homework:
Distributed Databases
Dec 02 Lecture #24: Distributed OLAP Database Systems
Readings:
Chapter 20.7, 22.9
Dec 04 Lecture #25: Final Review + Systems Potpourri