This course is on the design and implementation of database management systems. Topics include data models (relational, document, key/value), storage models (n-ary, decomposition), query languages (SQL, stored procedures), storage architectures (heaps, log-structured), indexing (order preserving trees, hash tables), transaction processing (ACID, concurrency control), recovery (logging, checkpoints), query processing (joins, sorting, aggregation, optimization), and parallel architectures (multi-core, distributed). Case studies on open-source and commercial database systems will be used to illustrate these techniques and trade-offs. The course is appropriate for students with strong systems programming skills.
| Name | Office Hours | Location | |
|---|---|---|---|
|  | Andy Pavlo | Monday 1:30-2:30 | GHC 9019 | 
| Name | Office Hours | Location | |
|---|---|---|---|
|  | Joy Arulraj | Friday 1:30-2:30 | GHC 9022 | 
|  | Leon Li | Sunday 4:00-5:00 | Citadel Commons (GHC 5th Floor) | 
|  | Mengran Wang | Thursday 5:00-6:00 | Citadel Commons (GHC 5th Floor) | 
|  | Allison Wang | Saturday 4:00-5:00 | Citadel Commons (GHC 5th Floor) | 
|  | Prashasthi Prabhakar | Tuesday 1:15-2:15 | Citadel Commons (GHC 5th Floor) | 
|  | Christopher "Inf" Wallace | TBA | TBA | 
|  | Sivaprasad Sudhir | Monday 10:30-11:30 | Citadel Commons (GHC 5th Floor) |