Description
The course examines advanced topics in database system implementation. It starts with the in-depth coverage of algorithms and data structures used in the implementation of relational DBMSs. These include sorting, hashing, and indexing.
The use of the above techniques in query processing and query optimization is studied next.
In the third part of the course, the techniques used for implementing concurrency control and crash recovery in database systems are studied.
Parallel dataflow algorithms are introduced, in the last part of the course, on the example of MapReduce model.
The use of the above techniques in query processing and query optimization is studied next.
In the third part of the course, the techniques used for implementing concurrency control and crash recovery in database systems are studied.
Parallel dataflow algorithms are introduced, in the last part of the course, on the example of MapReduce model.
General Information
Instructor:
Sayyed Nezhadi (snezhadi@cs.toronto.edu)
Lectures:
Mon & Wed, 2:00 - 3:00 PM, MP137
Tutorials:
Fri, 2:00 - 3:00 PM, MP137 (Starting Jan 19th)
Office Hours:
Wed, 3:00 - 5:00 PM, BA5287
TAs:
Pashootan Vaezipoor (Head TA)
Ioannis Xarchakos
Wei Zheng
Ioannis Xarchakos
Wei Zheng
Prerequisites:
Students should have taken CSC343H1, CSC369H1, CSC373H1/CSC375H1 or have equivalent knowledge in algorithms, data structures, relational algebra, and systems. Course work involves three programming assignments, mostly in C/C++ and Python.
Textbook:
"Database Management Systems" by Raghu Ramakrishnan and Johannes Gehrke, 3rd Edition. Available new and used at the UofT bookstore. We are interested in the parts III to V. The last part of the course will be covered using other resources.
Grading:
- One programming assignments (20%)
- Team Project (40%)
- Final exam (40%): In order to pass this course, you must earn at least 40% on the final exam.
- Team Project (40%)
- Final exam (40%): In order to pass this course, you must earn at least 40% on the final exam.
Assignment Policies:
Assignments are due at 11:59 pm on due date sharp. Assignments must be submitted electronically on your Markus account. Be sure to confirm that you have submitted all the required files and the correct version of each; we cannot accept missing files or a different version of an already-submitted file after the due date. Code that you submit to us for grading must work on the CDF machines in order to earn credit.
We recognize that unexpected problems sometimes make it difficult to submit assignments on time. You can submit each assignment up to 2 days late with 10% penalty per day.
The work you submit must be your own. It is an academic offence to copy someone else's work. This includes their code, their words, and even their ideas. Whether you copy or let someone else copy, it is an offence. Academic offences are taken very seriously. At the same time, we want you to benefit from working with other students. It is appropriate to discuss course material and technology related to assignments, and we encourage you to do so.
We recognize that unexpected problems sometimes make it difficult to submit assignments on time. You can submit each assignment up to 2 days late with 10% penalty per day.
The work you submit must be your own. It is an academic offence to copy someone else's work. This includes their code, their words, and even their ideas. Whether you copy or let someone else copy, it is an offence. Academic offences are taken very seriously. At the same time, we want you to benefit from working with other students. It is appropriate to discuss course material and technology related to assignments, and we encourage you to do so.
Accessibility Needs:
The University of Toronto is committed to accessibility. If you require accommodations or have any accessibility concerns, please visit <a href="http://www.accessibility.utoronto.ca">Accessibility Services</a> as soon as possible.
Name | Office Hours | |
---|---|---|
Sayyed Nezhadi | When? Where? | |
Wei Zheng | When? Where? | |
Ioannis Xarchakos | When? Where? |
Lecture Notes
Lecture Notes
Lecture Date
Mar 14, 2018
Mar 12, 2018
Mar 2, 2018
Feb 28, 2018
Feb 26, 2018
Feb 5, 2018
Jan 29, 2018
Jan 22, 2018
Jan 17, 2018
Jan 15, 2018
Jan 8, 2018