CS 554 - Database Systems

Graduate Course  ·  Fall 2025  ·  Instructor: Joyce Ho

Course Description

An advanced course on database systems covering the design, implementation, and use of both relational and non-relational database systems. Topics include the relational data model, SQL, physical data organization, indexing, query processing and optimization, transaction management, concurrency control, and modern database paradigms including column stores, key-value stores, document databases, distributed databases, and vector databases.

Schedule

Lesson References Assignments
Lesson 1Introduction
Lesson 2Relational Data Model + Database Design
Lessons 3-5SQL I-III Homework 1 on database design and SQL
Lesson 6Physical Data Organization
Lessons 7-8Indexing I-II Homework 2 on SQL and indexing
Lessons 9-10Relational Algebra I-II Final Project (Large, open data-driven website) Proposal
Lesson 11Query Processing
Lessons 12-13Query Optimization I-II
Lesson 14Column Store Databases Homework 3 on Query Optimization
Lesson 15DuckDB
Lesson 16Key-Value Stores Final Project Progress Report
Lessons 17-18MongoDB I
Lesson 19Transaction Management Homework 4 on DuckDB and MongoDB
Lesson 20Concurrency Control
Lesson 21Distributed Databases I
Lesson 22Distributed Databases II / Vector Databases I
Lesson 23Vector Databases II
Lesson 24Parting Thoughts on Modern DBMS
Lessons 25 & 26 Final Project Presentations Final Project Report

Assignments and Grading

The final grade will be determined by a weighted average of all the graded items. Grades may be curved so that the class mean falls at least in the B range.

Component Weight
4 Homeworks 40%
Final Project 40%
In-Class Exercises 20%
AI Tool Policy. You may use generative AI tools such as Co-Pilot and ChatGPT in the same manner as an Internet resource. You must credit the interaction source much the same way you would attribute reference to a textbook, article, or webpage. Failure to disclose and cite your use of such a tool will be considered a violation of the honor code.