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.

Unless otherwise noted, the section numbers in the “Reference” column refer to the book by Garcia-Molina, Ullman, and Widom (2nd Ed.).

18/26Introduction [notes, slides]
8/28Relational model and algebra [notes, slides]
(Jun out of town; recorded lecture conducted by TA)
Gradiance RA assigned
Homework 1 assigned [pdf]
2.1, 2.2, 2.4
29/2Database design in E/R model [notes, slides]4.1-4.4
9/4Database design: E/R-relational translation [notes, slides]
(+ up to Slide 7 below)
Gradiance RA due
Gradiance ER assigned
4.5, 4.6
39/9Database design theory: FDs, MVDs, BCNF, 4NF [notes, slides]
(up to Slide 30)
Gradiance FD, MVD assigned
Project assigned [pdf]
3.1-3.4, 3.6, 3.7
9/11SQL: basics, subqueries, aggregation [notes, slides]
(up to Slide 16)
Homework 2 assigned [pdf]
Gradiance ER due
2.3, 8.3, 6.1.1-6.1.5, 6.2, 6.3, 6.4
49/16SQL: NULL, outerjoin, modifications, constraints [notes, slides]
(up to Slide 10)
Homework 1 due
Gradiance FD due
Gradiance SQL Querying assigned
6.1.6, 6.1.7, 6.5, 7.1-7.4
9/18Project mixer [slides]Gradiance MVD due
59/23Catching up (see slides below for announcements)Gradiance SQL Constraints assigned
9/25SQL: triggers, views, indexes [notes, slides]

SQL: recursion [notes, slides]
(up to Slide 8)
Gradiance SQL Querying due
Gradiance SQL Triggers/Views assigned
7.5, 8.1-8.2

69/30SQL: programming [notes, slides]
(up to Slide 7)
Homework 2 due
Gradiance SQL Constraints due
Gradiance SQL Recursion assigned
9.1, 9.3, 9.4, 9.6
10/2Midterm examGradiance SQL Triggers/Views due
710/7Fall break
10/9SQL: transactions [notes, slides]
(up to Slide 14)
Project milestone 1 due
Gradiance SQL Recursion due
810/14XML/DTD [notes, slides]
(up to Slide 20)
Gradiance XML assigned11, 12.1
10/16Querying XML: XPath, XQuery [notes, slides]
(up to Slide 16)
Homework 3 assigned [pdf]12.2
910/21Catching up (see slides below for announcements)Gradiance XML due
10/23XML-relational mapping [notes, slides]
NoSQL: JSON and MongoDB [notes, slides]
(up to Slide 10)
1010/28Catching up (see slides below for announcements)
(Jun out of town; recorded lecture conducted by TA)
10/30Semi-structured data: programming: SAX and DOM [notes, slides]
Physical data organization [notes, slides]
(up to Slide 8)
13.2, 13.3, 13.5, 13.7
1111/4Indexing [notes, slides]
(up to Slide 7)
Homework 3 due
Gradiance Indexes assigned (see note below*)
14.1, 14.2
11/6Catching up (see slides below for announcements)Project milestone 2 due
Homework 4 assigned [pdf]
1211/11Query processing: algorithms [notes, slides]
(up to Slide 20)
Gradiance Indexes due15.1-15.6, 15.8
11/13Query processing: systems perspective [notes, slides]
(up to Slide 7)
16.1, 16.7.3-16.7.5
1311/18Query optimization [notes, slides]
(up to Slide 10)
11/20Catching up (see slides below for announcements)
1411/25Parallel data processing: MapReduce & Spark [notes, slides]
(up to Slide 29)
11/27Thanksgiving break
1512/2Transaction processing [notes, slides]
(up to Slide 14)
Homework 4 due (except X2)
Gradiance CC & Recovery assigned
18.1-18.4.2, 17.4
12/4A glimpse of data mining [notes, slides]Homework 4 X2 due
Gradiance CC & Recovery due Friday 12/6
Project demos end by noon; last chance to update final report by midnight
Thu. 2-5pm
Final exam

* 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).