The class takes place: Monday + Wednesday, 5:10pm - 6:25pm, online
Databases management systems are a crucial part of most large-scale industry and open-source systems. This course provides comprehensive coverage of issues associated with database system development and an in-depth examination of structures and techniques used in contemporary database management systems (DBMSs). Students will learn about the inner workings of these exciting systems: Which algorithms are used? What are typical architectures used to build a system as complex as a DBMS? What are implementation strategies? These questions and more will be answered during the course.
The course is highly applied, emphasizing practical skills and habits through a series of programming assignments during which students will develop their own tiny DBMS like engine. We will cover the most important aspects/components of a DBMS: storage and buffer management, indexing, query optimization, query execution, and concurrency control and recovery.
- Email: firstname.lastname@example.org
- Phone: 312 567 5205
- Office: Stuart Building, room 206b (online this semester)
- Office Hours: Wednesdays, 1:00 pm - 2:00 pm
- Webpage: http://www.cs.iit.edu/~dbgroup/members/bglavic.html
- Email: email@example.com
- Phone: online only
- Office: online only
- Office Hours: Tuesdays + Thursdays, 2:00pm-3:00pm
Programming experience in C, C++ or other low level languages
Unix OS and file system knowledge is helpful
Data structures (.e.g., CS401)
Weighting of Deliverables
- programming assignments: (10% + 10% + 15% + 15%)
- midterm exam: 20%
- final exam: 20%
- quizzes: (5% + 5%)
Your final course grade is determined based on your total score which is calculated as the weighted sum of the points for each of the deliverables. The weights are as shown above. For each deliverable you will receive between
100 points. For some deliverables, I am giving additional bonus points. These are not considered for the grade cutoffs. For instance, the first programming assignment is weighted 10%. For sake of the example assume that you get 110 points in this assignment (full points + bonus points), then this assignment would contribute \(0.1 * 110 = 11\) points to your final score.
- A: > 80
- B: > 60
- C: > 50
- E: < 50
The following text books will be helpful for following the course and studying the presented material. All four textbooks have their merits, but any one should be sufficient as reading material.
- Elmasri and Navathe, Fundamentals of Database Systems, 6th Edition, Addison-Wesley, 2003
- Ramakrishnan and Gehrke, Database Management Systems, 3nd Edition, McGraw-Hill, 2002
- Silberschatz, Korth, and Sudarshan, Database System Concepts,
, McGraw Hill, 2010
- Garcia-Molina, Ullman, and Widom, Database Systems: The Complete Book, 2nd Edition, Prentice Hall,