Overview
This course is designed to
introduce graduate students to the foundations of database systems,
focusing on basics such as the relational algebra and data model,
query optimization, query processing, and transactions. This is not a
course on database design or SQL programming (though we will discuss
these issues briefly). It is designed for students who have taken
6.033 (or equivalent); no prior database experience is assumed though
students who have taken an undergraduate course in databases are
encouraged to attend.
Classes will consist of lectures and discussions based on readings
from the database literature. There will be a semester long project,
as well as two exams and a few (2 or 3) problem sets.
Enrollment may be limited.
Topics Covered
Topics related to the engineering and design
of database systems, including: data models; database and schema
design; schema normalization and integrity constraints; query
processing; query optimization and cost estimation; transactions;
recovery; concurrency control; isolation and consistency; distributed,
parallel, and heterogeneous databases; adaptive databases; trigger
systems; pub-sub systems; semi-structured data and XML querying.
Lecture and readings from original research papers. Semester-long
project and paper.
Prerequisites
Students should have taken 6.033 or equivalent. Prior database
experience is not required.
Units
3-0-9. 6.893 is a Grad-H class. It counts as an engineering concentration (EC) subject in Systems.
Grading
Grades are assigned based on 3 problem sets, 2 quizzes, a final project, and class
participation. The grading breakdown is as follows:
- Problem Sets: 20% total
- Exams: 10% each
- Final Project: 45%
- Class Participation: 15%
Late assignments will not be accepted.
Collaboration Policy
For problem sets, you are allowed to discuss
your answers with other students, but please write up your own answers
and list your collaborators. Copying solutions from other students is
never allowed. For the group project you will work in teams and hand
in only one written report.
Text
The course readings will primarily be drawn from the 4th Edition of ``Readings in Database Systems'', edited by Stonebraker and Hellerstein. The text will be available from the Coop.
The Third Edition of "Readings In Database Systems" is a substantially different text (it does not include the same readings.)
There will be several other readings that will be posted on the course web site.
6.033 is a prerequisite. You may wish to review 6.033 Chapter 8, especially during our discussion of transactions and logging.