Following is a tentative schedule of the topics, and the details *will* change as the semester progresses.
Date Lecture Topics and Materials Notes Assignments
  • Why study databases, and key principles underlying the field of data management.
  • Overview of the current data management systems + Industry perspective
  • High-level overview of a relational database system
  • Intro to relational data model + SQL
  • Logistics
[pdf slides] Setting up computing environment (No deliverable)
No class. Self-study using video (Part 1, Part 2) and posted material for
Reading Homework 1.
  • Relational model and relational algebra
  • Different types of keys
  • Basic SQL
[pdf slides]
No class (Labor Day)
Relational model/SQL continued.
[pdf slides] Assigned reading: Chapters 2, 3.1-3.7
(this should be done in conjunction
with the videos above).
Reading Homework 1 (Due 9/9 noon)
Relational Algebra.
[pdf slides] Assigned reading: Chapters 5.1.1 (JDBC), 5.2 (SQL Procedures/Functions), 6.1.1 (Fundamental Operations),
A Short Video (Slides for the video)
Reading Homework 2 (Due 11:59am 9/14)
More SQL: Views, Triggers, NULLs, Embedded SQL
[pdf slides]
[class activity]
Project 1 (Due 9/18)
More SQL. Entity-relationship Model.
[pdf slides] Assigned reading: Chapters 7.1-7.3, 7.5
Reading Homework 3 (Due 11:59am 9/21)
Entity-relationship Model. Ruby-on-Rails.
[pdf slides]
[class activity]
Database Design; Normalization
[pdf slides] Assigned reading: Chapters 8.1, 8.2, 8.3.1, 8.3.2
A Short Video
Reading Homework 4 (Due 11:59am 9/28)
Database Design; Normalization
(cntd above)
[class activity]
Project 2 (Due 10/2)
Storage Hierarchy: Disks, SSD, Caches, etc.
[pdf slides]
Assigned reading: Chapters 10.1, 10.2.1, 10.2.2, 10.2.4
Reading Homework 5 (Due 11:59am 10/5)
Midterm 1.
File organization, Buffer Management, Indexes.
[pdf slides]
Assigned reading: Chapters 10.3.1-3, 10.5, 10.8, 11.1
Reading Homework 6 (Due 11:59am 10/12)
File organization, Buffer Management.
(cntd above)
Project 3 (Due 10/16)
[pdf slides]
Assigned reading: Chapters 11.3
Reading Homework 7 (Due 11:59am 10/19)
[pdf slides]
Query Processing.
[pdf slides] Assigned reading: Chapters 12.1, 12.2, 12.3.1
Reading Homework 8 (Due 11:59am 10/26)
Query Processing. [class activity]
[pdf slides] Project 4 (Due 10/30)
Parallel Databases; MapReduce; Spark
[pdf slides] Assigned reading: Chapters 17.3, 18.1, 18.2, 18.4
Reading Homework 9 (Due 11:59am 11/2)
Parallel Databases; MapReduce; Spark
(cntd from above)
Parallel Databases; MapReduce; Spark
(cntd from above)
Assigned reading: Spark Programming Guide
Reading Homework 10 (Due 11:59am 11/9)
Query Optimization.
[pdf slides]
Assigned reading: Chapters 13.1, 13.2.1, 13.3.1
Reading Homework 11 (Due 11:59am 11/16)
Transactions: ACID Properties, Concurrency.
[pdf slides] [class activity] Project 5 (Due 11/20)
Transactions: Recovery.
(cntd) Assigned reading: Chapters 14.1, 14.2, 14.3, 14.4 (some of this was already covered in class, and should be quick reading)
Reading Homework 12 (Due 11:59am 11/23)
Buffer/misc topics. (No class: Self-stufy using posted video and materials).
Transactions: Concurrency, Recovery.
(cntd) Assigned reading: Chapters 14.8, 15.3, 15.4
Reading Homework 13 (Due 11:59am 11/30)
Transactions: Recovery
(cntd) Project 6 (Due 12/7)
Distributed Databases; Distributed Transactions; CAP Theorem; Cloud Computing.
[pdf slides] Assigned reading: Chapters 19.2.1, 19.2.2, 19.3, 20.1, 20.2
Reading Homework 14 (Due 11:59am 12/7)
Object-relational Models; OLAP; Data Warehouses.