Principles of Database Management Systems home page (Fall 2001)

Tietokannan hallintajärjestelmät -kurssin kotisivu (syksy 2001)

Topics of the course: Implementation principles of (relational) database management systems: data storage and index structures, methods of query evaluation, recovery and concurrency control. Treatment is theoretical, that is, the course involves no programming or using any spesific database systems.
 [Practical arrangements] [Material] [Lecture Notes] [Exercises] [Assumed background] [Summary of course feedback]

Practical arrangements

The course consists of ...
Lectures are given by professor Pekka Kilpeläinen.

Language of instruction: The course will be given in English. (For communication, either English of Finnish can be used.)

Exercise session group #1 will be guided by assistant Tarja Lohioja, and group #2 by professor Pekka Kilpeläinen. Some changes in the exercise schedule are anticipated; Please check the online schedules.
A preliminary course syllabus is available here.
Grading: (32*Exam/MaxExam + 12*HomeWork/MaxHomeWork - 8)/3. (The retake exam can be graded either based on this formula or on exam points only.) In either option, at least half of the exam points are required to pass the course. The lowest accepted grade is 3.

Material

Textbook: H. Garcia-Molina, J.D. Ullman & J. Widom: Database system implementation. Prentice Hall, 2000. (Book homepage)

A few copies of the textbook are available in the department library for overnight loans.

Course topics are covered also in a number of alternative textbooks:
Lecture notes: Copies of lecture notes will be delivered here prior to the lectures. The slides are based on originals created by Jeffrey Ullman, Jennifer Widom and Hector Garcia-Molina (University of Stanford). The credit of the high quality of the content belongs to the original authors, while I am to blame of any errors possibly incured by modifications of the slides.

  1. Introduction (Oct. 29) [Reduced PDF for printing] * [PowerPoint] (small changes on Oct. 29)
  2. Disk hardware (Oct. 29 & 30) [Reduced PDF for printing] * [PowerPoint] (small changes on Oct. 29)
  3. Data representation [Reduced PDF for printing] * [PowerPoint]
  4. Indexes on sequential files [Reduced PDF for printing] * [PowerPoint]
  5. B-trees (Nov. 14) [Reduced PDF for printing] * [PowerPoint]
  6. Hashing (Nov. 14 & 15) [Reduced PDF for printing] * [PowerPoint]
  7. Query processing (Nov. 15 & 19) [Reduced PDF for printing] * [PowerPoint]
  8. Query compilation and optimization (Nov. 20 & 26) [Reduced PDF for printing] * [PowerPoint]
  9. Recovery from failures (Nov. 27 & Dec. 3) [Reduced PDF for printing] * [PowerPoint]
  10. Concurrency control (Dec. 3, 4 & 10) [Reduced PDF for printing] * [PowerPoint]
  11. More about transaction management (Dec. 11) [Reduced PDF for printing] * [PowerPoint]
  12. Information integration (Dec. 17) [Reduced PDF for printing] * [PowerPoint]
Please note that the lecture notes are mainly just skeletons for the lectures, that is, they are not intended especially for self-study. If you cannot attend the lectures, you'd better consult the textbook or other relevant literature for those lectures.

Exercises

Session 1 (November 12): PDF * Postscript
Session 2 (November 23): PDF * Postscript
Session 3 (November 30): PDF * Postscript
Session 4 (December 5): PDF * Postscript
Session 5 (December 12 & 13): PDF * Postscript
Session 6 (December 18): PDF * Postscript
Session 7 (December 21)

Assumed background

(or corresponding basic knowledge about algorithms, index structures, relational model - especially relational algebra and SQL - and computer hardware - especially secondary storage devices)



Pekka Kilpeläinen
Universiry of Kuopio
Department of Computer Science and Applied Mathematics