Schedule

Date Topic Slides Video
Jan 11, 2016 Course Introduction and History of Database Systems
Jan 13, 2016 In-Memory Databases
Assigment Released: Hash Join Operator
Jan 18, 2016 Martin Luther King Day — No Class
Jan 20, 2016 Concurrency Control I
Jan 25, 2016 Concurrency Control II — Multi-versioning
Jan 27, 2016 Concurrency Control III — Optimistic
Feb 01, 2016 Indexes I — Locking & Latching
Feb 03, 2016 Indexes II — OLTP
Feb 08, 2016 Indexes III — OLAP
Assigment Due: Hash Join Operator
Assigment Released: Concurrent Index
Feb 10, 2016 Storage Models & Data Layout
Feb 15, 2016 Query Execution & Scheduling
Feb 17, 2016 Join Alogrithms I — Hashing
Feb 22, 2016 Join Alogrithms II — Sort-Merge
Feb 24, 2016 Logging & Recovery I — Physical Logging
Feb 29, 2016 Logging & Recovery II — Alternative Methods
Mar 02, 2016 Project #3 Topics
Assigment Released: Final Project
Mar 07, 2016 Spring Break — No Class
Mar 09, 2016 Spring Break — No Class
Assigment Due: Concurrent Index
Mar 14, 2016 Student Project Proposals
Mar 16, 2016 Database Compression
Mar 21, 2016 Query Planning I — Optimizer Implementation
Mar 23, 2016 Query Planning II — Cost Models
Mar 28, 2016 Query Compilation
Mar 30, 2016 Scan Sharing
Apr 04, 2016 Canceled — No Class
Apr 06, 2016 Student Project Meetings — No Class
Apr 11, 2016 Vectorized Execution
Apr 13, 2016 Student Project Updates
Apr 18, 2016 Larger-than-Memory Databases
Apr 20, 2016 Non-Volatile Memory Database Systems
Apr 25, 2016 Final Review
Guest Speaker: Ankur Goyal (CSD'15) - VP of Engineering @ MemSQL
Apr 27, 2016 Final Exam

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.