The “notes” links in the “Topic” column below are usually available 30 minutes before the lecture. They are intentionally incomplete in order to keep the lectures more lively. You can download and/or print them for taking notes during the lecture. They may contain typos/errors that will be corrected only in the final and complete version of the slides, available through the “slides” links after the lecture.
The PowerPoint versions are also available for download, but not via direct links — simply replace the .pdf suffix in any “slides” link (or “notes” link starting the 9th week) with .pptx and you will find the corresponding PowerPoint file. For printing, PDFs are better because the PowerPoint files don’t have all the fonts embedded.
Unless otherwise noted, the section numbers in the “Reference” column refer to the book by Garcia-Molina, Ullman, and Widom (2nd Ed.).
Lecture livestreams/recordings are available via Panopto and accessible here.
| Week | Date | Topic | Assignment | Reference |
|---|---|---|---|---|
| 1 | 08/28 (M) | No meeting | ||
| 08/29 (Tu) | Introduction [notes, slides] | |||
| 08/31 (Th) | Relational model and algebra [notes, slides] (up to Slide 38) | Gradiance RA assigned | 2.1, 2.2, 2.4 | |
| 2 | 09/04 (M) | No meeting (Labor Day) | Homework 1 assigned [link] | |
| 09/05 (Tu) | Database design in E/R model [notes, slides] (up to Slide 24) | Gradiance RA due Gradiance ER assigned | 4.1-4.4 | |
| 09/07 (Th) | Database design: E/R-relational translation [notes, slides] (up to Slide 16) | Project assigned [overview, standard, open] | 4.5, 4.6 | |
| 3 | 09/11 (M) | Setup help | Review | Homework 1 help [ Slides ] | ||
| 09/12 (Tu) | Database design theory [notes, slides] (up to Slide 24) | Gradiance ER due Gradiance FD, MVD assigned | 3.1-3.4, 3.6, 3.7 | |
| 09/14 (Th) | SQL: basics, subqueries, aggregation [notes, slides] (u pto Slide 12) | Homework 1 due Project milestone 1 due | 2.3, 8.3, 6.1.1-6.1.5, 6.2, 6.3, 6.4 | |
| 4 | 09/18 (M) | Inclusive database design [link, slides] | Homework 2 assigned [link] | |
| 09/19 (Tu) | Catching up (up to Slide 43): for announcements see next slide deck below | Gradiance FD, MVD due Gradiance SQL Querying, Constraints assigned | ||
| 09/21 (Th) | SQL: NULL, outerjoin, modifications, constraints [notes, slides] (up to Slide 32) | Project milestone 2 due | 6.1.6, 6.1.7, 6.5, 7.1-7.4 | |
| 5 | 09/25 (M) | Review | Homework 2 help [Problems, Solutions] | ||
| 09/26 (Tu) | SQL: triggers and views [notes, slides] (plus up to Slide 8 below) | Gradiance SQL Querying, Constraints due Gradiance Triggers/Views assigned | 7.5, 8.1-8.2 | |
| 09/28 (Th) | SQL: programming + web dev intro [notes, slides] | Homework 2 Problem 1, X1 due (Problem 2 due date extended to 09/30) | 9.1, 9.3, 9.4, 9.6 | |
| 6 | 10/2 (M) | Project help/grind | ||
| 10/3 (Tu) | SQL: transactions [notes, slides] (plus up to Slide 7 below) | Gradiance Triggers/Views due | 6.6 | |
| 10/5 (Th) | SQL: recursion [notes, slides] | Gradiance SQL Recursion assigned Project milestone 3 due | 10.2 | |
| 7 | 10/9 (M) | Midterm review | ||
| 10/10 (Tu) | XML/DTD [notes, slides] | 11, 12.1 | ||
| 10/12 (Th) | Midterm exam (in class) | |||
| 8 | 10/16 (M) | No meeting (Fall Break) | ||
| 10/17 (Tu) | No meeting (Fall Break) | |||
| 10/19 (Th) | Querying XML: XPath, XQuery [notes, slides] (up to Slide 21) | Gradiance SQL Recursion due Gradiance XML assigned | 12.2 | |
| 9 | 10/23 (M) | XML [Problems, Solutions] | Homework 3 assigned [link] | |
| 10/24 (Tu) | Catching up: for announcements see next slide deck below | |||
| 10/26 (Th) | NoSQL: JSON and MongoDB [notes, slides] (up to Slide 20) | Gradiance XML due | ||
| 10 | 10/30 (M) | Review | Homework 3 help [Problems, Solutions] | ||
| 10/31 (Tu) | XML-relational mapping [notes, slides] (up to Slide 6) | |||
| 11/02 (Th) | Physical data organization [notes, sldies] (up to Slide 8) | Homework 3 due (Problems 2 & X1 due date extended to 11/04) | 13.2, 13.3, 13.5, 13.7 | |
| 11 | 11/06 (M) | Project help/grind [Slides] | ||
| 11/07 (Tu) | Catching up (up to Slide 26): for announcements see next slide deck below | Gradiance Indexes assigned | ||
| 11/09 (Th) | Indexing [notes, slides] (up to Slide 21) | Project milestone 4 due | 14.1, 14.2 | |
| 12 | 11/13 (M) | Extra credit SQL challenge [link] | Homework 4 assigned [link] | |
| 11/14 (Tu) | Query processing: algorithms [notes, slides] (up to Slide 12) | 15.1-15.6, 15.8 | ||
| 11/16 (Th) | Catching up (up to Slide 31): for announcements see slide deck above | Gradiance Indexes due | ||
| 13 | 11/20 (M) | Project help/grind | ||
| 11/21 (Tu) | Query processing: systems perspective [notes, slides] | 16.1, 16.7.3-16.7.5 | ||
| 11/23 (Th) | No meeting (Thanksgiving Recess) | |||
| 14 | 11/27 (M) | Review | Homework 4 help [Problems, Solutions] | ||
| 11/28 (Tu) | Query optimization [notes, slides] (up to Slide 23) | 16.2-16.6 | ||
| 11/30 (Th) | Transaction processing [notes, slides] (up to Slide 11) | Gradiance CC & Recovery assigned Homework 4 due (Problems 2 & 3 due date extended to 12/05) | 18.1-18.4.2, 17.4 | |
| 15 | 12/04 (M) | Project help/grind | ||
| 12/05 (Tu) | Catching up: for announcements see end of slide deck above Parallel data processing (if time allows) [slides] | |||
| 12/07 (Th) | In-class project showcase + final review [slides] | Gradiance CC & Recovery due | ||
| 12/09 (Sa) | Project due | |||
| 16 | 12/11 (M) | No meeting (Reading Period) | ||
| 12/12 (Tu) | No meeting (Reading Period) | |||
| 12/14 (Th) | No meeting (Reading Period) | |||
| 12/16 (Sa) | Final exam (7-10pm) | |||
* Note on Gradiance Indexes exercise: The “B-trees” these problems refer to are what we call B+trees in lecture. Also, these problems use a definition of “fan-out” that is different from what we discussed in class. When they say “fan-out n = 3” they mean that the maximum number of keys per node is 3, and the maximum number of pointers per node is 4 (i.e., “max fan-out is 4” in our terminology).