Database Systems Implementation

CS 448/648 Waterloo, Winter '09


Synopsis and Overview

The lectures try to address the following topics:
  • Functionality provided by a Database Management System (review).
  • How do (typical) Database Management Systems work?
  • Anatomy of a DBMS: the big picture.
  • Storing data on disks, physical representation, index structures, etc.
  • Relational Algebra: the operational approach.
  • Query optimization. Cost of relational operations.
  • Transaction processing and recovery.
  • Prerequisites

  • Elementary math (sets, relations, induction, etc.),
  • Elementary data structures and algorithms (e.g., searching in search trees), and
  • Programming skills in C (this class involves considerable programming component).

  • Book(s)

    Required: Database Management Systems. R. Ramakrishnan and J. Gehrke. McGraw-Hill. 3rd Edition.

    The lectures do not follow the textbook to the letter. Additional lecture notes will be made available for some of the advanced topics.


    Assessment

    Course marking scheme:

    Graduate students enrolled in CS648 will do a project in lieu of the final exam.

    To pass the course, a student must pass the final examination.


    Fine print: the usual university policies on academic honesty, fair use of computing facilities, etc., apply by default.