Description
CS 4604 is intended to be a first course in database systems for advanced undergraduates in computer science. It offers students an introduction to the design and programming of database systems. In particular, we will cover the ER (entity-relationship) approach to data modeling, the relational model of database management systems (DBMSs) and the use of query languages such as SQL. We will also cover relational algebra and the use of SQL in a programming environment. We will also touch upon query processing and the role of transaction management. We will also devote some time to current topics of research such as XML databases, data mining and MapReduce (Hadoop). Topics outside the scope of this course are how to implement a DBMS in detail, active database elements, and object oriented DBMSs.
Why do we do databases?
Course Information
- Instructor:
B. Aditya Prakash
Torg 3160F
Office Hours: Mondays and Wednesdays 2:30pm-3:45pm
Email: badityap AT cs DOT vt DOT edu
Important: Please include CS 4604 in the subject line of all email messages that you send me.
- Teaching Assistants:
- Sorour Amiri
McBryde 106
Office Hours: Tuesdays 9:30-11am and Thursdays 3:30-5pm
Email: esorour AT vt DOT edu
- Shamimul Hasan
McBryde 106
Office Hours: Will not hold regular office hours
Email: shasan2 AT vt DOT edu
- Class Time: Monday and Wednesday, 4:00PM-5:15PM, Lavery Hall 340
- Discussion: Piazza link.
- Grading and Policies: See here. (please make sure you have gone through it at least once)
Textbooks and Resources
See other resources (pointers to datasets, code etc.)
here.
Announcements
- Final letter grades have been posted. Have a great summer!
- Final Exam on May 10, 3:25-5:25pm, in classroom! Good luck. See final review here.
- Project Assignment 3 released. Due 05/02. Demos on 05/03.
- Homework 7 released. Due 04/20.
- Homework 6 released. Due 04/13.
- Handout 3 is on the website. We will discuss it next week.
- Project Assignment 2 released. Due 04/06.
- Homework 5 released. Due 03/28.
- Homework 4 released. Due 03/21.
- Welcome back from the Spring break!
- Midterm on Wednesday 03/02 in class. Check out the review slides here.
- Homework 3 released. Due 02/29.
- HW2 due date changed to 02/22.
- VT closed due to snow: class cancelled on Monday 02/16.
- Homework 2 released. Due 02/17.
- Handout 2 is on the website. We will discuss it next week.
- Homework 1 released. Due 02/10.
- Project Assignment 1 has been released. Due 02/03.
- Handout 1 is on the course website. We will discuss it on 02/01.
- Welcome to the class! First class on 01/20.
Handouts and Practice Problems
Homeworks
- Homework 1 (Due: Wed, Feb 10, 2016) [Solution]
- Homework 2 (Due: Mon, Feb 22, 2016) [Solution]
- Homework 3 (Due: Mon, Feb 29, 2016) [Solution]
- Homework 4 (Due: Mon, Mar 21, 2016) [Solution]
- Homework 5 (Due: Mon, Mar 28, 2016) (do not forget to check links to the multiple set-up files in the HW) [Solution]
- Homework 6 (Due: Wed, Apr 13, 2016) [Solution]
- Homework 7 (Due: Wed, Apr 20, 2016) [Solution]
Course Project
Schedule (tentative)
For lecture slides and readings, go
here.
- The Relational Model
- Relational Algebra and SQL
- E/R Models
- Storing Data and Indexes
- Hashing/Sorting and Query Processing
- Query Optimization
- NoSQL and MapReduce
- FDs and Normalization
- Transactions and Concurrency Control
- Logging and Recovery
- XML, Data Mining, Data-warehousing
Acknowledgements
|
Amazon's AWS in Education grant program for generously providing support for Amazon Web Services. |