[USC / University of Southern California]CSCI585: Database Systems

Please check the prerequisites before considering this course

[Course Summary | Required Materials | Lectures | Assignments | Academic Integrity Policy | Related Web Sites | Prerequisites | Announcements ]
How to get D-Clearance for the students in the waiting list?

Tuesday and Thursday 11:00-12:20 PM
Location: OHE-122



Prof. Cyrus Shahabi
      Office: PHE 410
      Phone:  (213) 740-8162
      Email:  shahabi@rcf.usc.edu
      Office Hours: TTH 1:30 - 2:30 pm

Teaching Assistant

Mohammad R. Kolahdouzan
Informix system administrator
      Office: PHE 306
      Email:  csci585@usc.edu
      Office Hours: TTH 1:00 - 2:00 pm
Kiyoung Yang
Web master
      Office: SAL 229
      Phone:  (213) 740-4521
      Email:  csci585@usc.edu
      Office Hours: Wed 10:00 am - 12:00 pm

Course Summary

This course covers the essential concepts, principles, techniques, and mechanisms for the design, analysis, use, and implementation of computerized database systems. Key information management concepts and techniques are examined: information modeling and representation; information interfaces - access, query, and manipulation, implementation structures, and issues of distribution. The database and information management system technology examined in this course represents the state-of-the-art, including traditional approaches as well as recent research developments. By providing an imbalanced view of "theory" and "practice," the course should allow the student to understand, use, and build practical database and information management systems. The course is intended to provide a basic understanding of the issues and problems involved in database systems, a knowledge of currently practical techniques for satisfying the needs of such a system, and an indication of the current research approaches that are likely to provide a basis for tomorrow's solutions.
Back to top



Back to top


You can go to SAL-300 and obtain D-clearance for csci585 (regardless of your major (CS, EE, ...) and/or status (MS, PhD)). If the class is full, then add your name to the waiting list and show up during the first couple of sessions.
Back to top


As stated in the university catalog, a passing grade in CSCI485 or departmental permission is required to register for this class. Knowledge in relational databases, SQL, relational algebra and physical database design is required.

This Course involves challenging programming assignments and projects for which understanding of and programming ability in Java is required. Knowledge in JDBC is a plus.
Back to top

Required Materials

The following textbook and additional readings will be used this semester to augment the material presented in the lectures:

Textbook :
   Ramakrishnan, Gehrke. "DATABASE MANAGEMENT SYSTEMS" , second edition, McGRAW Hill

Additional readings (A.R.):

  1. Jim Gray. "Evolution of Data Management." Computer v29 n10 (October 1996):38-46.
  2. Michael Stonebraker. "Object-Relational DBMS-The Next Wave." Informix white paper
  3. Thomas Connolly, Carolyn Begg, and Anne Strachan. "Ch 17: Object Databases." Database Systems.
  4. Zhen Hua Liu. "Object-Relational Features in Informix Internet Foundation." Informix technical notes. 9.4(Q4 1999):77-95.
  5. Alin Deutsch et. al. "Querying XML Data" Bulletin of Data Engineering, v22, n3, Sep. 1999
  6. Ralf Hartmut Guting. "An Introduction to Spatial Database Systems." VLDB Journal 3(4): 357-399, 1994.
  7. Dimitris Papadias, Yannis Theodoridis, Timos K. Sellis and Max J. Egenhofer. "Topological Relations in the World of Minimum Bounding Rectangles: A Study with R-trees." Proceedings of SIGMOD, pp.92-103, 1995.
  8. Shahram Ghandeharizadeh and Cyrus Shahabi. "Distributed Multimedia Systems." Wiley Encyclopedia of Electrical and Electronics Engineering, volume 5, pp720-750.
  9. Patrick O'Neil and Elizabeth O'Neil. "Ch 4: Object-Relational SQL." Database Principles, Programming and Performance, 2nd edition, Morgan Kauffman publications.
  10. Ashish Goel, Cyrus Shahabi, Shu-Yuen Didi Yao, and Roger Zimmermann, SCADDAR: An Efficient Randomized Technique to Reorganize Continuous Media Blocks, International Conference on Data Engineering 2002, San Jose, California, February 2002
  11. Hanan Samet. "Spatial Data Structures." Appears in Modern Database Systems: The Object Model, Interoperability, and Beyond, W.Kim, ed., Addison Wesley/ACM Press, Reading, MA, 1995, 361-385.
  12. Timos Sellis, Nick Roussopoulos and Chrishtos Faloutsos. "THE R+-TREE: A DYNAMIC INDEX FOR MULTI-DIMENSIONAL OBJECTS." Proceedings of the 13th VLDB Conference, Brighton 1987.
  13. XML 1.0 (http://www.w3.org/TR/REC-xml)
  14. XML-QL: A Query Language for XML (http://www.w3.org/TR/NOTE-xml-ql/)
  15. S. S. Chawathe "Describing and Manipulating XML Data" Bulletin of Data Engineering, v22, n3, Sep. 1999
  16. Ching-Tien Ho Rakesh Agrawal Nimrod Megiddo Ramakrishnan Srikant "Range Queries in OLAP Data Cubes" (1997) . SIGMOD 1997
  17. S. Geffner D. Agrawal A. El Abbadi "The Dynamic Data Cube" . EDBT'2000
  18. Mirek Riedewald, Divyakant Agrawal, and Amr El Abbadi "Flexible Data Cubes for Online Aggregation" . ICDT'2001
  19. J. S. Vitter, M. Wang, and B. Iyer. "Data Cube Approximation and Histograms via Wavelets" . CIKM'1999
  20. Torben Bach Pedersen, Christian S. Jensen. "Multidimensional Database Technology", IEEE Computer Dec. 2001.
  21. Surajit Chaudhuri, Umeshwar Dayal, Venkatesh Ganti. "Database Technology for Decision Support Systems", IEEE Computer Dec. 2001.
  22. Rolfe R. Schmidt and Cyrus Shahabi, ProPolyne: A Fast Wavelet-based Algorithm for Progressive Evaluation of Polynomial Range-Sum Queries (extended version), VIII. Conference on Extending Database Technology, Prague, March 2002
  23. Rolfe R. Schmidt and Cyrus Shahabi, How to Evaluate Multiple Range-Sum Queries Progressively, 21st ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems (PODS), Madison, Wisconsin, June, 2002
  24. (M. Riedewald, D. Agrawal, A. El Abbadi, and R. Pajarola. Space-Efficient Data Cubes for Dynamic Environments. In Proc. Int. Conf. on Data Warehousing and Knowledge Discovery (DaWaK), pages 24-33, 2000 )
In principle, these readings also will be available for download from the DEN.

The material covered in lectures should be considered the main definition of the scope of the course. However, the text and readings are important to supplement lecture material. Assignments and exams will be based on the topics presented in lecture, and may also involve issues addressed in the textbook and readings.
Back to top


(A.R. refers to Additional Readings)
Date Topic Handouts
01/08/2002 Introduction and overview (A.R. 1 Session 0
01/10/2002 Introduction and overview  Session 1
01/15/2002  ER data model (review)  Session 2
01/17/2002 Relational data model (review)  Session 3
01/22/2002 Extended ER  Session 4
01/24/2002 Extended ER  HOMEWORK 1
01/29/2002 SQL (review)  Session 5, Session 5 - Extra
01/31/2002 SQL (advanced)  Session 6
02/05/2002 SQL (advanced)   
02/07/2002 OODB (A.R. 3 Session 7
02/12/2002 OO & OR-DBMS (A.R. 2, 9 Session 8
02/14/2002 OR-DBMS & SQL 3 (A.R. 4 Session 9, Session 9(2up), Session 9 Extra, Session 9 Extra (2up)
02/19/2002 Spatial Databases (A.R. 6 Session 10, Session 10 (2up)
02/21/2002 Spatial Databases  HOMEWORK 1 DUE (grades)
02/26/2002 Spatial Index structures (A.R. 7, 11 , 12 Session 11, Session 11(2up), Session 11(2up, black and white)
02/28/2002 Database Connectivity  Session 12, Session 12(2up)
Examples 1 2 3 4 5 6
03/05/2002 Exam 1 review  HOMEWORK 2
hw2-s02.doc, hw2-s02.pdf
Input Image
sample GUIs:
GUISample.jpg, GUISample2.jpg
Java/class/library files:
ST_LineRing.java ST_Point.java ST_WKBGeometry.java ST_WKBLineString.java ST_WKBMultiLineString.java ST_WKBMultiPoint.java ST_WKBMultiPolygon.java ST_WKBPoint.java ST_WKBPolygon.java Convert.class ifxjdbc.jar
input files:
parks.atp restaurants.atp shoppings.atp streets.atp
Informix Spatial Datablade Module User's Guide
03/07/2002 Exam 1  
03/12/2002 No class--Spring Break   
03/14/2002 No class--Spring Break   
03/19/2002 XML (A.R. 13,15 session 13, session 13(2up)
03/21/2002 XML (A.R. 5, 14 session13-cnt, session13-cnt(2up)
03/26/2002 XML  session14, session14(2up)
03/28/2002 XML session14-extra, session14-extra(2up)
04/02/2002 Multidimensional Databases (A.R. 16, A.R. 20, A.R. 21) HOMEWORK 2 DUE
HOMEWORK 3 (pdf, doc)
Session 15 (2up)
04/04/2002 OLAP (A.R. 17) Session 15-2(2up)
04/09/2002 OLAP (A.R. 18, A.R. 24) Session 16-1 (2up)
04/11/2002 OLAP(A.R. 19, 22, 23) Session 16-2 (2up)
04/16/2002 Multimedia Databases (A.R. 8) Session 17 (2up)
04/18/2002 Multimedia Database  
04/23/2002 Multimedia Databases (A.R. 10) Session 18 (2up)
04/25/2002 Exam 2 review   
04/30/2002 Exam 2   
Back to top

Exams and Assignments

There will be two exams in this course: a midterm and a second exam (not a final). Both exams will be given during scheduled class time. There will be three assignments. Remote login access is required for the assignments. Grading scheme:
HOMEWORK 1 (grades) 10%
EXAM 1 30%
EXAM 2 30%

Assignments Description

Homework 1

Use the Extended ER and Object Relational concepts to create a conceptual schema for a provided example application. Use your schema to build a sample database in Informix. Write the given queries in SQL3 and execute them on your database.

Homework 2

Extend your schema of Homework 1 to support spatial datatypes. Use the new schema to build a database in Informix. Write a GUI program that supports Graphical Query Language (GQL). The program must allow the users to select spatial attributes for spatial queries (e.g. selection from a map). The GQL must then parse these into SQL queries, which will be passed to your database.

Homework 3

Extend the schema from Homework 1 to XML. Create a DTD specification for the same. Write a custom XSL stylesheet (details will be provided). Write an XML parser module that reads the XML data and automatically populates your database (a sort of XML->SQL conversion). Write XML Queries using an XML Query Language (e.g., X-Query) to query the XML data.
Back to top

Academic Integrity Policy

Academic Integrity

All homework and exams must be solved and written independently, or you will be penalized for plagiarism. The USC Student Conduct Code prohibits plagiarism. All USC students are responsible for reading and following the Student Conduct Code, which appears on pp. 76-77 of the 2000-2001 SCampus.

In this course we encourage students to study together. This includes discussing general strategies to be used on individual assignments. However, all work submitted for the class is to be done individually.

Some examples of what is not allowed by the conduct code: copying all or part of someone else's work (by hand or by looking at others' files, either secretly or if shown), and submitting it as your own; giving another student in the class a copy of your assignment solution; consulting with another student during an exam. If you have questions about what is allowed, please discuss it with the instructor.

Students who violate University standards of academic integrity are subject to disciplinary sanctions, including failure in the course and suspension from the University. Since dishonesty in any form harms the individual, other students, and the University, policies on academic integrity will be strictly enforced. We expect you to familiarize yourself with the Academic Integrity guidelines found in the current SCampus.

Violations of the Student Conduct Code will be filed with the Office of Student Conduct, and appropriate sanctions will be given.
Back to top

Related Web Sites

Back to top