Textbook and Readings

Textbook: Hector Garcia-Molina, Jeffrey D. Ullman, and Jennifer Widom. Database Systems: The Complete Book. Pearson, 2nd edition, 2009. The university bookstore carries this book, which is a required textbook for this course.

The textbook’s Web site has many useful resources: http://infolab.stanford.edu/~ullman/dscb.html

Readings: Items marked with  are required for COS 580 students. COS 480 students may wish to read them if they plan to attempt the extra-credit questions on tests. Readings marked with ⋆⋆ are extra credit for COS 580 students and double-extra credit for COS 480 students. Students who wish to receive credit for ⋆⋆ items must discuss the specifics with me first. Everyone is encouraged to at least browse all the readings.

This list will be updated to reflect class preferences this semester.

1.
Edgar F. Codd. A relational model of data for large shared data banks. Communications of the ACM, 13(6):377–387, June 1970.
2.
Notes on Codd’s paper: notes/rmodel.pdf; notes/rmodel/rmodel.html.
3.
[A recent paper for 480 and 580 will be added here.]
4.
 Goetz Graefe. Query evaluation techniques for large databases. ACM Computing Surveys, 25(2):73–170, June 1993.
5.
Notes on Graefe’s paper: notes/qeval.pdf; notes/qeval/qeval.html.
6.
[A recent paper for 580 will be added here.]
7.
⋆⋆ François Bancilhon and Raghu Ramakrishnan. An amateur’s introduction to recursive query processing strategies. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD), pages 16–52, Washington, D.C., May 1986.

Further Reading: These books are not required reading and nothing in the course will depend directly on reading them. However, they are good sources for different explanations of some concepts, additional information on various topics, examples, and exercises.

1.
Serge Abiteboul, Richard Hull, and Victor Vianu. Foundations of Databases. Addison-Wesley, 1995.
This book is a textbook for COS 598, Advanced Topics in Databases, and focuses on Database Theory. The book is not light reading but it is much easier than reading the equivalent set of papers.
2.
Hector Garcia-Molina, Jeffrey D. Ullman, and Jennifer Widom. Database Systems: The Complete Book. Pearson, 2nd edition, 2009.
The first half of this book is essentially identical to the main textbook. The second half covers topics in database system implementation, and is a good resource for learning more about how database systems are implemented. Since the terminology and style is consistent with the main textbook, it should be easy reading.
3.
Christopher J. Date. An Introduction to Database Systems. Pearson, 2004.
A classic database-systems textbook.
4.
Raghu Ramakrishnan and Johannes Gehrke. Database Management Systems. McGraw-Hill, 3rd edition, 2002.
Another standard textbook with detailed coverage of some topics that we will cover only briefly.