CS 525 - Advanced Database Organization, Sections 1, 91, 251
Summer, 2006
Instructor: Wai Gen Yee (yee@iit)
Time: 12:10 - 2:50pm, Tuesdays and Thursdays
Location: SB239
Office hours: Tuesdays and Wednesdays 3:00-4:00pm, or by appointment in SB226c
Class Web page: www.ir.iit.edu/~waigen/classes/cs525sum06
|
Course News! | Home | Courses
News:
Course news relevant to all sections will be posted here in reverse chronological order.
June 6, 2006 No class this week. Course lectures will be posted on Blackboard. Makeup classes will be announced.
Description:
Study of relational, semantic, and object-oriented data models and interfaces. Database management system techniques for query optimization, concurrency control, recovery management, and distributed processing. If we have time, we will cover some more advanced, non-core database topic (e.g., data mining).
Prerequisites:
CS 425 (Database Organization), and probably CS 402 (Introduction to Advanced Studies). Knowledge of programming in C, the Unix file system. Data structures.
Recommended Texts (any one of the following):
- Elmasri and Navathe, Fundamentals of Database Systems, 4th Edition, Addison-Wesley, 2003.
- Ramakrishnan and Gehrke, "Database Management Systems," 3nd edition, McGraw-Hill, 2002.
- Silberschatz, Korth, and Sudarshan, Database System Concepts, 4th Edition, McGraw Hill, 2002
Syllabus:
- Storage system: block-based data access, writing data to disk, representing nulls, locating free space, overflow blocks
- Buffer management: LRU, CLOCK, LFU, FIFO, etc.
- Access structures: heap, ISAM, B+-tree, direct addressing, hashing, extendible hashing
- Query processing: implementing the relational algebra, implementing sorting, pipelining, materialized views, cost analyses of operations
- Query optimization: pushing down selects, projects, join ordering
- Transaction processing: transaction states, conflicts, serializability, 2-phase locking, logging, ARIES, etc.
Course Structure:
Lectures, exams, programming assignments, office hours, and some extra credit assignments. Students may form teams of up to three people to do the programminga assignment.
Workload:
One programming assignment, in two parts (~65% from 25% + 40%) and three exams (~35% = 10% + 10% + 15%). Each project and exam will be spaced evenly apart. The final exam will be held on the final exam day of this class as specified by the registrar. I expect all students to do all projects and take all exams on time. There will also be opportunities to do extra credit projects. I look kindly upon students who are active in the class.
Policy:
Plagiarism will result in an automatic failure. Late policy is 5% per day, for a maximum of one week. If you have any problems following this policy, you must notify me in advance. If you need extensions for some deadline, you have a better chance of leniency if you notify me in advance.
Feel free to demo projects before they are due (during office hours) to get a sense of what I expect. By demoing before the due date, you can know exactly what you will get during the actual demo for a grade.
Grading will primarily be based on six numbers: three exams and two projects. Based on these grades, all students should know how well they are doing in the class. Because there are so many grades, no single grade should kill you, and I should get a good sense of your progress. Note that I am strict, but, I believe, fair.
Finally: Enjoy the class. Participate. Ask questions. Come to office hours. Talking won't hurt your grade (it might even help) and makes the class more fun to attend and teach.
Course Materials:
I will prepare an electronic blackboard (blackboard.iit.edu) for class
announcements. All information on the blackboard supersedes anything else you read elsewhere. Read it! The course Web page
will also be a repository for information.
I am preparing slides for the course, which I will post on the Blackboard system.
Important Dates:
- 6/20 - Exam 1
- 6/29 - Project 1 due
- 7/4 - No class. Holiday
- 7/11 - Exam 2
- 7/14 - Last day for withdrawal
- 7/20 - Project 2 due
- 7/25 - No class. Makup will be 7/19
- 7/27 - Exam 3
Project Information:
Projects are due by the beginning of class time on the date they're due. The late penalty will be assessed every 24 hours.
Project topics will be announced.
Extra:
There will be occasional opportunities to perform extra credit. I will let you know in class. Extra credit assignments, to
be sure, are designed to give more motivated students an opportunity to learn more, under supervision. They will not
dramatically change your grade, if at all (you won't go from being a C student to an A student).
More Info:
For a hint at what this class will be like, see my Autumn, 2004 Web page.