The
exam is cumulative.
It covers all the topics
we covered in the course.
The coverage will be fairly uniform over these topics.
The topics we have really added since the second test
have been a fuller coverage of Ch.15, the overall query optimizer,
and an overview of transactions and transaction management from Ch.16.
- The Physical Database
- Storage, Memory Management, Data Structures, & Cost Model
(Ch.8 & 9)
- disk space manager
- cost model: how to count I/O's
- buffer pool manager
- file and page organization
- Indexes
- types of indexes (Ch.8)
- clustered vs. unclustered
- alternatives 1, 2, &3 arrangements
- matching to search keys
- differences between tree and hash-based indexes for useage
- Tree Indexes (Ch.10)
- Hash-based Indexes (Ch.11)
- extendable
- linear
- indexes as access paths (Ch.8 & elsewhere)
- prefix matching
- cost model for using
- clustered vs unclustered
- index-only plans
- index intersection
- External Sorting (Ch.13)
- The Query Processor
- query evaluation, overview (Ch.12)
- access paths
- cost model & System R
- reduction factors
- cost estimation
- query trees & alternative plans
- pipelining
- optimization "rules" like pushing selects
- evaluating the relational operators (Ch.14)
- select
& access paths
- project with distinct
- join
- nested loop joins
- block-nested-loop join
- index-nested-loop join
- sort-merge join
- na?ve: sort first, then merge
- 2-pass: accomplishes join in two passes
- hash join (two pass)
- the set operations
- aggregation
- a relational query optimizer (Ch.15)
- translating SQL queries into relational-algebra trees
- estimating the cost of a plan
- estimating the result sizes
- estimating overall cost
- equivalences in the relational algebra
- enumerating alternative plans
- assumptions of System R
- Database Management (Ch.16) (just the basics)
- ACID properties
- serializability
- transaction mananagement
- two-phase locking
- crash recovery
Only topics covered both in the reading
and in class are fair game.
|