Office Hours and Links
The goal of this class is two-fold. First, to introduce you to core database concepts (e.g., data modeling, logical design, SQL) so that you too can build a billion dollar application. Second, to teach enough about database engine internals (e.g., physical database design, query optimization, transaction processing) so you have a good sense of why queries may be running slowly/incorrectly. We will also discuss their relevance to systems used in industry.
The Data Management Seminar invites interesting database researchers and practitioners to speak. Students are invited to join in person or on zoom (if available). We will announce these periodically throughout the semester.
ACDE
is in BCNF. It is not because B
is not in the projection, so C
does not determine A
, and is thus not a key. This has been fixed in the slide. Date |
Topic |
Assigned |
Due |
|
---|---|---|---|---|
L1 | 6-Sep | Intro and Overview | HW 0 Look for teammates |
|
L2 | 8-Sep |
ER Models
optional: Textbook Chapter 6 except for Sections 6.7, 6.10, and 6.11. |
HW1 Part 1 Project 1 Part 1 |
HW0 (9/11 11:59PM EST. NO LATE DAYS) |
L3 | 13-Sep |
ER Models
optional: Textbook Chapter 6 except for Sections 6.7, 6.10, and 6.11. |
HW 1 Part 1 (9/16 11:59PM EST) Formed Project 1 Team (no submission) |
|
L4 | 15-Sep |
Relational Model
optional: Textbook Ch 2.1-2.3, 2.5, 6.7, 6.8, except 6.7.2 |
Project 1 Part 1 approval phase | |
L5 | 20-Sep |
Relational Model
optional: Textbook Ch 2.1-2.3, 2.5, 6.7, 6.8, except 6.7.2 |
HW1 Part 2 Schema | Project 1 Part 1 approval phase |
L6 | 22-Sep |
Relational Algebra
optional: Textbook Ch 2.6 (use lecture notations, which differ from the book) |
Project 1 Part 1 approval phase | |
L7 | 27-Sep |
Relational Algebra
optional: Textbook Ch 2.6 (use lecture notations, which differ from the book) |
Project 1 Part 1 10AM digital copy | |
L8 | 29-Sep |
SQL: Basics, Joins
optional: Textbook Ch 3 |
HW2 Project 1 Part 2 |
HW1 Part 2 |
L9 | 4-Oct |
SQL: Group by, Order by, UDFs
optional: Textbook Ch 3 |
||
L10 | 6-Oct |
SQL: Advanced
optional: Textbook Ch 4.1-4.4, 5.2-5.4 |
HW2 (No grace days/late submissions accepted at all beyond 10/7 11:59PM EST) | |
L11 | 11-Oct | Review | ||
L12 | 13-Oct | Midterm 1 : Gradescope | HW3 Project 1 Part 3 |
|
L13 | 18-Oct |
APIs
optional: Textbook Ch 5.1, 5.2 |
||
L14 | 20-Oct | Security and Privacy | ||
L15 | 25-Oct |
Normalization
optional: Textbook Ch 7.1-7.5 |
||
L16 | 27-Oct | Normalization and Data Quality | ||
L17 | 11/1/22 |
Physical Design
: Storage and Files
optional: Textbook Ch 12, 13.1-13.3, 14.3, 14.5 |
HW4 Project 2 |
HW3 |
L18 | 11/3/22 |
Physical Design
: Indexes and Access Methods
optional: Textbook Ch 12, 13.1-13.3, 14.3, 14.5 |
||
L19 | 11/10/22 |
Query Processing
: Plans, Statistics, Joins
optional: Textbook Ch 15.1-15.6 |
||
L20 | 11/15/22 |
Query Processing
: Joins Optimization
optional: Textbook Ch 15.1-15.6 |
Project 1 Part 3 | |
L21 | 11/17/22 |
Transactions
: Concurrency Control
optional: Textbook Ch 17 |
||
L22 | 11/22/22 |
Transactions
: Concurrency Control
optional: Textbook Ch 17 |
||
L23 | 11/29/22 |
Transactions
: Recovery
optional: Textbook Ch 17 |
HW4 Project 2 |
|
L24 | 12/1/22 | Designing Databases for Application Developers : Guest Lecture: James Cowling, Convex | Kaggle Extra Credit | |
L25 | 12/6/22 | Beyond Classic Relational DBMSes | ||
L26 | 12/8/22 | Midterm 2 (Cumulative) : Gradescope | Wiki extra credit (12/9 11:59PM EST) |