CS145 - Spring 2004
Introduction to Databases
- The final exam will be held on Monday June 7 from 9:30-11:30 AM.
It will be two hours long beginning at 9:30 AM, not three hours long
beginning at 8:30 AM as scheduled by the university. The exam will be
held in our usual classroom, the Gates Building Room B01 (the
Hewlett-Packard Auditorium). All students, including SCPD students,
are expected to attend the exam on-campus. There will be no early or
makeup exams.
- The exam will be closed book. However, each student may bring up
to three pages of prepared notes. That's six total sides of writing
on 8.5"x11" paper.
- A sample final exam (from Prof. Widom's Spring '03 offering of
CS145) is linked to the Exams page.
Note there were some differences in topics covered.
- Sample solutions for Challenge Problems 5 will be linked to
the Assigned Work page on Friday
June 4.
A review session will be conducted by the TAs on Sunday June 6 from
7:00-8:30 PM. It will be held in Building
380 (Math Corner), room 380W in the basement. Please bring
questions. The review session will not be televised.
The final exam will cover all material covered by the midterm exam
(see Midterm
Logistics and Review). In addition, the following material
will be covered:
- All lectures through Wednesday June 2
- All required readings from the Course Schedule
- Gradiance Exercises #4,5
- Challenge Problems #4,5
- The AuctionBase programming project
Please note:
- Although all material from the entire course is eligible to
appear on the final exam, the exam will be weighted heavily toward
the material from the latter half of the course.
- As on the midterm exam, solutions on the final exam
will be graded for simplicity and clarity as well as for correctness.
What follows is an outline of the material we've covered since the
midterm exam. All of this material is fair game for the final exam.
- UML
- Classes
- Associations, multiplicities, self-associations
- Association classes
- Subclasses
- Aggregation and composition
- Translating UML designs to relational schemas
- Constraints and triggers
- Non-null constraints
- Key constraints
- Referential integrity
- Attribute-based constraints
- Tuple-based constraints
- General assertions
- SQL-99 triggers
- Transactions
- Motivation: multi-user, crash recovery
- ACID properties
- Serializability
- Transaction rollback
- Isolation levels: read uncommitted, read committed, repeatable read, serializable
- Indexes
- Properties and uses of indexes
- Index selection problem
- Views
- Creating and using views
- Modifying views
- Materialized views
- Authorization
- Privileges
- Views and authorization
- grant and revoke statements
- Object-relational SQL
- Nested structures using TYPEs (UDTs)
- Methods
- References
- Ordering relationships
- Recursion
- WITH statement including WITH RECURSIVE
- Linear and nonlinear recursion
- Mutual recursion
- Data warehousing and mining
- OLTP vs. OLAP
- Data warehousing architecture
- Star schemas
- Data cubes, CUBE and ROLLUP SQL options
- Association rules, support & confidence
- Data Management in Peer-to-Peer Systems
- Approaches to P2P: centralized index, fully distributed, super-peers
- Distributed hash tables
- Routing indices
- Trust, micropayments
- Network awareness