Midterm #2
is not intended to be cumulative,
and so will not test directly on the subjects covered up to Midterm #1,
the physical database,
per se.
So not covered:
- physical database
- disk space manager
- buffer pool manager
- file, page, and record formats
- internals of index data structures
- B+ trees
- extendable and linear hashs
- basics of the external sort algorithm
That said,
everything we have done since Midterm #1
builds on the material from before.
So in that sense,
you are responsible for the previous material
for this exam,
by necessity.
- indexes (needed for access paths) (Ch.8)
REVIEW
- prefix matching
- cost model for using
- clustered vs unclustered
- ...
- external sorting (Ch.13)
- basics
REVIEW
Many other relational algorithms are based on this,
and have the same performance issues.
- advanced issues
(e.g., double buffering, block reads and writes, etc.)
- 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 loops join
- block nested loops join
- index nested loops 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
- relational optimizer (Ch.12&14)
Just preliminaries, as covered in Chapter 12,
but not as discussed in the recent classes from Chapter 15.
Nothing advanced.
- System R
- left-join trees
- pipelining
Only topics covered in the reading and in class are fair game.
I shall try to be careful not to emphasize anything
in depth from the optimizer itself.
However, topics from the optimizer overview in Chapter 14
are fair game.
You should know the basic concepts.
|