CS 640 Principles of Database Management and Use

Winter 2013

https://cs.uwaterloo.ca/~ohartig/CS640/

Olaf Hartig

DC 2556, x33734

email address

Description

"An overview of relational databases and how they are used; exposure to relational database technology. Fundamentals of transactions. Database views. Introductions to two or three alternative data models and systems, such as those used for structured text, spatial data, multimedia data, and information retrieval. Introduction to several current topics in database research, such as warehousing, data mining, managing data streams, data cleaning, data integration, and distributed databases."

Note, this is an introductory course. Students who are already familiar with the basic principles of database management and use may be more interested in the database systems course (CS 648).

Prerequisites

Students are expected to understand the fundamentals of programming languages, data structures, operating systems, and algorithms, each at least at the level of an introductory course.

Students are required to review the materials concerning academic integrity and academic honesty. Each student must complete and sign the Academic Integrity Acknowledgement Form, and hand it in before the first assignment is due.

References

The course is structured around a collection of published research articles. Each of these articles includes an extensive bibliography of related work. There are also many database textbooks that are used to teach database fundamentals to undergraduate students. Students might wish to refer to one of the following:

The Encyclopedia of Database Systems includes short, readable articles on many topics:

and several topics are covered by short monographs in the series:

Finally, the database area is well-covered by Michael Ley's online DBLP bibliography:

Workload and Evaluation

There will be no tests or exams.

Schedule (tentative)

Tuesdays and Thursdays 11:30 - 12:50; DC 3313

Tuesday Thursday Assignments due
Jan 8 / 10 Presentation: Introduction, ER
Slides (Intro)
Presentation: ER (cont'd), RM (basics)
Slides (ER), Slides (RM)
Jan 15 / 17 Presentation: RM (cont'd)
Slides
Discussion: ER models + DB design + ER to RM
Slides, Reading list
Jan 22 / 24 Presentation*: Query languages (RA)
Slides
- no class -
Jan 29 / 31 - no class - Discussion*: RM (normalization)
Slides, Reading list
A1
Feb 5 / 7 Presentation*: Physical design
Slides
Discussion: Query languages (SEQUEL/SQL, QBE)
Exercise, Exercise Solutions, Reading list
Feb 12 / 14 Presentation: Query processing
Slides
Discussion: Physical design and storage
Reading list
Feb 19 / 21 - no class -
(reading week)
- no class -
(reading week)
Feb 26 / 28 Presentation: Transaction management
Slides
Discussion: Query processing + optimization
Reading list
Mar 5 / 7 Presentation: Security
Slides
Discussion: Transaction mgmt. (concurrency control, locking)
Slides, Reading list
A2
Mar 12 / 14 Presentation: Views
Slides
Discussion: Transaction mgmt. (recovery)
Cheat sheet, Reading list
Mar 19 / 21 Presentation: Distributed DBs
Slides
Discussion: Views
Slides, Reading list
A3
Mar 26 / 28 Presentation: DB Application Development
Slides
Discussion: Parallel Database Systems
Slides, Reading list
Apr 2 / 4 Presentation: The Web as a DB
 
Discussion: Data Warehousing
Slides, Reading list
A4

*instructor: M. Tamer Öszu

For each topic, background material and some of the principle ideas will be introduced first, and (except for the last topic) the related publications will be discussed the following week. Students must read the assigned publications in advance of the class in which the content will be discussed. The following questions are intended to guide your reading and help you prepare for the discussion in class. You need not submit written answers unless specifically instructed in advance to do so. Nevertheless, you will find the discussion more fruitful if you are prepared to answer the following questions:

  1. Briefly summarize the paper. What innovations are described in the paper?
  2. Briefly explain each of the specific new key concepts. Provide an example for each concept. These example should be different from the examples presented by the authors.
  3. Which parts of the paper remain unclear or confusing? What might help you to resolve the difficulties?

Furthermore, you will likely find Keshav's essay entitled "How to Read a Paper" instructive.

Reading Lists

ER Models + DB Design + ER to RM

Relational Model (Normalization)

Query Languages

To install your own copy of DB2, follow these instructions.

Physical Design and Data Storage

Query Optimization

Transaction Management

Views

Parallel Database Systems

Data Warehousing


Apr. 4, 2013. Olaf Hartig