Schedule

Date Topic Slides Notes Video
Jan 17, 2018 Course Introduction and History of Database Systems
Assignment Released: SQL String Functions
Jan 22, 2018 In-Memory Databases
Jan 24, 2018 Query Compilation
Jan 29, 2018 Optimistic Concurrency Control (OCC)
Assignment Due: SQL String Functions
Jan 31, 2018 Multi-Version Concurrency Control (Part I)
Assignment Released: Concurrent Index
Feb 05, 2018 Multi-Version Concurrency Control (Part II)
Feb 07, 2018 Index Locking & Latching
Feb 12, 2018 OLTP Indexes (Part I)
Feb 14, 2018 OLTP Indexes (Part II)
Feb 19, 2018 Storage Models, Data Layout, & System Catalogs
Feb 21, 2018 Database Compression
Feb 26, 2018 Logging Protocols
Feb 28, 2018 Checkpointing Protocols
Mar 05, 2018 Networking
Assignment Released: Final Project
Mar 07, 2018 Mid-term Exam
Mar 12, 2018 Spring Break — No Class
Assignment Due: Concurrent Index
Mar 14, 2018 Spring Break — No Class
Mar 19, 2018 Student Project Proposals
Mar 21, 2018 Optimizer Implementation (Part I)
Mar 26, 2018 Optimizer Implementation (Part II)
Mar 28, 2018 Cost Models
Apr 02, 2018 Execution & Scheduling
Apr 04, 2018 Parallel Join Algorithms (Hashing)
Apr 09, 2018 Parallel Join Algorithms (Sorting)
Apr 11, 2018 Vectorized Execution (Part I)
Apr 16, 2018 Vectorized Execution (Part II)
Apr 18, 2018 Student Project Meetings — No Class
Apr 23, 2018 Student Project Updates
Apr 25, 2018 Larger-than-Memory Databases
Apr 30, 2018 Databases on New Hardware
May 02, 2018 Guest Speaker

Trigger Warning: The material presented in this lecture uses explicit language and discusses certain situations in database management systems that may be triggering to some students.