Instructor
- Yousef Elmehdwi: https://science.iit.edu/people/faculty/yousef-elmehdwi
- Email: yelmehdwi@iit.edu
- Office: Stuart Building, room 237D
- Office Hours: F: 1:00-2:00 pm or by appointment
- Course Webpage: http://cs.iit.edu/~cs525
TAs
- TBD
- Email:
- Office
- Office Hours: TBD
Syllabus
syllabus.pdfCourse Overview
Monday + Wednesday, 11:25-12:40 pm, Stuart Building 104
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.
Workload
Prerequisites
- Courses: CS425
- Programming experience in C, C++ or other low level languages
- Unix OS and file system knowledge is helpful
- Data structures (.e.g., CS401)