up previous
Up: Query Processing Previous: Physical Organization

Structure of the Query Optimizer

  1. These are only some of the many query-processing strategies used in database systems.
  2. Most systems only implement a few strategies.
  3. Some systems make a heuristic guess of a good strategy, in order to minimize the number of strategies to be considered.
  4. Then the optimizer considers every possible strategy, but quits as soon as it determines that the cost is greater than the best previously considered strategy.
  5. To simplify the strategy selection task, a query may be split into several sub-queries.
  6. This simplifies strategy selection and permits recognition of common sub-queries (no need to compute them twice).
  7. Examination of a query for common subqueries and the estimation of the cost of a large number of strategies impose a substantial overhead on query processing.
  8. However, this is usually more than offset by savings at query execution time.
  9. Therefore, most commercial systems include relatively sophisticated optimizers.

Osmar Zaiane
Sun Jul 26 17:45:14 PDT 1998