CS145 - Autumn 2011
Introduction to Databases
- The final exam will be held on Monday December 12 from 7:00-9:00
PM in Annenberg Audtiorium, in the Cummings Art Building.
- 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 Fall '10 offering of
CS145) is linked to the Exams page. You may safely ignore the Data Mining and Emerging Trends questions on that exam (problems 9 & 10).
- Sample solutions for the Recursion Exercises and Challenge Problems in Assignment #7 will be made
available no later than Sunday morning December 11.
|
Review Sessions and Office Hours
|
- There will be two review sessions conducted by the TAs:
- The first one will begin during the latter portion of the class meeting on Wednesday, December 7, moving to room 420-041 at 12:30pm and continuing until finished.
- The second one will be held Friday December 9, starting at 4:00pm in Building 380 room 380C, and continuing until finished.
- The course staff will hold their regularly-scheduled office hours through Monday
December 12.
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 video lectures on the Course
Schedule from Unified Modeling Language through NoSQL Systems
- All components of Assignments #5-7
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.
- In-class guest and research lectures will not be on the exam; nor will the in-class activities specifically, although their main function was to reinforce the topics that will be covered.
- 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
- Indexes
- Properties and uses of indexes
- Index selection problem
- Constraints and triggers
- Non-null constraints
- Key constraints
- Referential integrity
- Attribute-based constraints
- Tuple-based constraints
- General assertions
- SQL-99 triggers
- SQLite triggers
- Transactions
- Motivation: multi-user, crash recovery
- ACID properties
- Serializability
- Transaction rollback
- Isolation levels: read uncommitted, read committed, repeatable read, serializable
- Views
- Defining and using views
- Modifying views:
INSTEAD OF triggers, automatic view modifications, SQL standard
- Materialized views
- Authorization
- Privileges
- Views and authorization
- grant and revoke statements
- SQL recursion
- WITH statement including WITH RECURSIVE
- Linear and nonlinear recursion
- Mutual recursion
- On-Line Analytical Processing
- OLTP vs. OLAP
- Star schemas
- Data cubes
- SQL CUBE and ROLLUP
- NoSQL systems (as covered in videos)
- NoSQL motivation, history, properties
- MapReduce framework
- Key-value stores
- Document stores
- Graph database systems