CSE 414 - Introduction to Database Systems
Description: In this course, we will introduce the basics of modern data management. You will learn about schema design, data modeling, query languages, building database applications, transactions, and many other topics. Through lectures, sections, and assignments, you will learn about and understand how real-world data management systems work, and how they touch upon many aspects of our daily lives.
Questions and Comments: If you have any questions or comments about lecture, sections, assignments, exams, or whatever, post on the discussion board. This is the fastest way to get in contact with the 414 staff and your peers. If you need to talk about anything personal or offline, see us during office hours or email the instructor (maas @ cs.washington.edu) to set up a meeting. And we love feedback! If you have any concerns, comments, or suggestions let us know through this anonymous feedback tool.
CSE 414 Staff
Anna Kuznetsova (Head TA)
She/her pronouns, avk5@cs
OH: Mondays @ 5pm (Allen 5th Floor Breakout)
Ron Pechuk
He/him pronouns, rpechuk@cs
OH: Wednesdays @ 4:30pm (Allen 2nd Floor Breakout)
Jessica Wang
She/her pronouns, jwang717@cs
OH: Wednesdays @ 2pm (Allen 5th Floor Breakout)
Jiacheng Wu
He/him pronouns, jcwu22@cs
OH: Thursdays @ 1:30pm (Allen 5th Floor Breakout)
Office Hour Schedule
Calendar
See Canvas (under Panopto tab) for lecture recordings
Date
Slides
Reading
Week 2
Monday, January 13
SQL Joins (cont.)
Week 3
Monday, January 20
NO CLASS (Holiday)
6.3
Friday, January 24
SQL Sub-queries continued
6.3
Friday, January 31
Database Design - ER Diagrams cont.
2.1
Week 5
Monday, February 3
Database Design - Functional Dependencies (slides)
2.2, 2.3
Wednesday, February 5
Database Design - BCNF Decomposition (slides)
3.4, 3.5, 3.6
Friday, February 7
BCNF Decomposition cont.
Transactions - Serializability (slides)
Week 6
Monday, February 10
Transactions - Serializability cont.
18.1, 18.2
Wednesday, February 12
Transactions - Locking (slides)
18.1, 18.2
Friday, February 14
Transactions - Locking cont.
18.3
Week 7
Monday, February 17
NO CLASS (Holiday)
Wednesday, February 19
Transactions - Isolation Levels (slides)
8.3-4, 14.1-7
Friday, February 21
Cost estimation (slides)
8.3-4, 14.1-7
Week 8
Monday, February 24
Cost estimation cont.
Tuning and Indexing (slides)
Wednesday, February 26
Tuning and Indexing cont.
8.3-4, 14.1-7
Friday, February 28
Tuning and Indexing cont.
Week 9
Monday, March 3
Parallel Databases Intro (slides)
20.1
Wednesday, March 5
Parallel Databases (cont.)
Friday, March 7
Parallel Databases (cont.)
MapReduce and Spark (slides)
Week 10
Monday, March 10
Semi-structured Data (slides)
Wednesday, March 12
Semi-structured Data cont.
SQL++ (slides)
Friday, March 14
SQL++ wrap up (slides)
Course Wrap-up (slides)
Section
Time Slots
Materials
Section 1, January 9th: Demo, AD Slides, AA Slides, AB/BB Slides, AE/BE Slides
Section 2, January 16th: Worksheet, Solutions, AB/BB Slides, AD Slides, AA Slides
Section 3, January 23rd: Worksheet, Solutions, AA Slides, AB/BB Slides, AC/AD Slides
Assignments
HW1 due Wednesday, January 15th @ 11:59pm (spec, Gradescope link)
HW2 due Friday, January 24th @ 11:59pm (spec, Gradescope link)
HW3 due Wednesday, February 5th @ 11:59pm (spec, Gradescope link)
HW4
HW 5
HW 6
HW7
Exams
There will be two take-home quizzes for this course. Both exams will be offered on Gradescope and can be taken at home.
Quiz 1 - Topics are similar problems to HW 1, HW 2, and HW 3, as well as relational algebra conceptual questions from the slides. The quiz should only take around 30-40 minutes to complete, and is administered in Gradescope as a take home quiz.
For practice problems, see midterm exam questions from Autumn 2018 and 2019
Quiz 2 - Topics are similar problems to HW 4, HW5 , as well as conceptual questions from the slides about transaction schedules. The quiz should only take around 30-40 minutes to complete.
For practice problems, see midterm exam questions from Autumn 2018 and 2019
Other Resources
Textbook
Database Systems: The Complete Book (2nd Edition) <errata>
The library has the following that you might find useful if you require another explanation of a topic.
Fundamentals of database systems by Elsmasri and Navathe
Database management systems by Raghu Ramakrishnan and Johannes Gehrke
Foundations of database systems by Abiteboul, Hull and Vianu
Past Lecture Recordings (for UW students)
Look at the course webpage for a schedule of what topic was taught when.
CSE 414 Spring 2020 - Mark Friedman - videos, course webpage
CSE 414 Winter 2020 - Shana Hutchison - videos, course webpage
CSE 344 Spring 2019 - Jonathan Leang - videos, course webpage