CSCD 43 -- Database Systems Technology

Winter 2022

Index of this document

Contact information and meeting times

Instructor:  Nick Koudas
Office hours: Fridays 11-1 on Zoom (or in UTSC office if class in person) by appointment
Office:   IC468 (Scarborough campus);  BA 5240 (St. George campus)
Telephone:  416-287-7253 (Scarborough campus);  416-946-5819 (St. George campus) 
Email:  koudas AT cs Dot toronto Dot edu

NOTE: When sending email to the above address, prefix your subject line with CSCD43
Please be precise and brief. I prefer plain text emails. Do not send me pieces of code
asking me what is wrong; please see the TA's.
TAs:  Daren Chao
Office hours:  Tuesdays 10-11am online or in person (IC 400, March 1 onwards)

Lecture time and location:  Friday 9am - 11am online synchronous starting Friday Jan 14 (check Quercus for meeting details) until Feb 18 (including Feb18 lecture which will be online). IC 212, after that (in person).

Tutorial times and locations:  Tuesday 9am-10am Online synchronous starting Jan 18 (you will receive email with lecture details). Tutorials will be at SY 110 same time starting March 1.

Back to the index

Course content

Course goals:   The course is an introduction to the technology behind relational database management systems. The topics covered include: storage systems, buffer management, physical database design, indexing and searching in one and more dimensions, query processing, query optimization, transactions management, recovery. The main goal of the course is to introduce techniques and principles used in the kernel of relational databases. The course will involve changing the kernel of a real database system to gain exposure on the underlying techniques. If time permits we will discuss other data architectures (column stores, Spark, Main Memory Data Systems).

Required Text:  Ramakrishnan and Gehrke: Database Management Systems, Third Edition, McGraw Hill.

Tentative weekly schedule:  see here

Calendar of important course-related events:


Date Event
Jan 14
First day of class
Jan 21
Project 1 handed out
Feb 8
Project 1 due before tutorial
Feb 11
Project 2 handed out
March 1
Tutorials and Classes In person going forward
March 22
Project 2 due before tutorial
Feb 18
Midterm in class 1 hour  duration / project 3 out
March 28
Last day to drop course
April 8
Project 3 due
April TBD
Final exam

Back to the index

Course policies

Course evaluation:   There will be three regular projects,  a midterm exam and a final exam. The purpose of the projects is to gain hands on experience working with the engine of an open source database management system. We will be using PostgreSQL in this course. You will modify the internals, adding new algorithms and functionality to the data management system. The projects follow closely the topics covered in the course. The relative weights of these components towards the final mark are shown in the table below:

Midterm 30%
Final 35%
Project 1
Project 2
Project 3

Midterm/Final Exams: Final exam will be in class and in person. I will update regarding midterm exam.

Late homework policy:  No late homeworks will be accepted. If you miss an assignment deadline because of a medical or personal emergency, you must fill out the Special Consideration Form. (In case of a medical emergency, you must also submit the UTSC Student Medical Certificate, completed and signed by your physician. The medical certificate should be submitted on the first class you are able to attend after your emergency. Late certificates will not be accepted.) 

Homework  collaboration policy:   For the projects you may, if you wish, form groups of 2 students. Groups are self managed and you are fully responsible for division of labour.

Remarking policy:   If your request concerns a simple addition error, see the instructor.  To make any other kind of remarking request, you must fill this form , attach it to your homework assignment or test, and give it to the instructor of the course no later than one week from the date the marked assignment or test was made available to the class.  Remarking requests made after this deadline will not be accepted.

Missed midterm test policy:    If you miss the midterm test due to a medical or other serious emergency, get in touch with your instructor immediately, and fill out the Special Consideration Form. (In case of a medical emergency, you must also submit the UTSC Student Medical Certificate, completed and signed by your physician.)  There will be no make-up test, but if we consider your reason for missing the test to be valid, we will use your final examination mark to compute your mark for the missed midterm test.

Attendance in tutorials:  Attendance in tutorials is as mandatory as attendance in lectures.  In neither case is formal attendance actually taken. However, there will be material presented only in tutorial and not discussed in the lectures for which you are responsible and in which you may be tested in homeworks or exams.

Back to the index


In this space we will post announcements related to the course. Please check this space at least weekly.

Back to the index


  • Marks so far

  • Handouts

    In this space we will make available electronic versions of course material.  There will be no electronic version of solutions available on the course web page.
    Tutorial material will not be available in electronic or hardcopy form -- i.e., attendance of tutorials is essential.

    Course related material available on Quercus files for this course.

    Back to the index

    Old exams

    There are no available old exams and/or homeworks.

    Back to the index