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:
- Elaheh Raisi
McBryde 106
Office Hours: 9:30am-11:00am, Tuesdays and 2:00pm-3:30pm Thursdays
Email: elaheh AT vt DOT edu
- Yao Zhang
McBryde 106
Office Hours: Will not hold regular office hours
Email: yaozhang AT vt DOT edu
- Class Time: Monday and Wednesday, 4:00PM-5:15PM, GOODW 115
- 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 posted. Have a great summer!
- Final Exam on May 11, 7:45-9:45am in classroom! Good luck. See final review here.
- Project Assignment 3 released. Due 05/05. Recitation on 04/22.
- Homework 7 released. Due 04/22.
- Homework 6 released. Due 04/15.
- Project Assignment 2 due date extended to 04/08 Wednesday (in class)!
- Handout 3 has been released. We will discuss it next week.
- Project Assignment 2 released. Due 04/06. Start early!
- Homework 5 released. Due 03/30.
- Homework 4 released. Due 03/23.
- Welcome back from the Spring Break!
- Midterm on March 4 in class! Good luck. See midterm review here.
- Homework 3 released. Due 03/02.
- Homework 2 released. Due 02/23.
- Project Assignment 1 released. Due 02/16.
- Handout 2 has been released. We will discuss it next week.
- Homework 1 released. Due 02/09.
- Handout 1 has been released. We will discuss it on 02/02.
- Welcome to the class! First class on 01/21.
Handouts and Practice Problems
Homeworks
- Homework 1 (Due: Mon, Feb 09, 2015) [Solution]
- Homework 2 (Due: Mon, Feb 23, 2015) [Solution]
- Homework 3 (Due: Mon, Mar 02, 2015) [Solution]
- Homework 4 (Due: Mon, Mar 23, 2015) [Solution]
- Homework 5 (Due: Mon, Mar 30, 2015) (do not forget to check the various set-up files via the HW) [Solution]
- Homework 6 (Due: Wed, Apr 15, 2015) [Solution]
- Homework 7 (Due: Wed, Apr 22, 2015) [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. |