Benchmarking the DBS3 Parallel Query Optimizer

  • Authors:
  • Mohamed Zaït;Daniela Florescu;Patrick Valduriez

  • Affiliations:
  • -;-;-

  • Venue:
  • IEEE Parallel & Distributed Technology: Systems & Technology
  • Year:
  • 1996

Quantified Score

Hi-index 0.00

Visualization

Abstract

The authors designed and implemented the DBS3 optimizer along three dimensions: search space, search strategy, and cost model. (The DBS3, or Database System on Shared Store, is a shared-memory prototype implemented on an Encore Multimax multiprocessor as part of Esprit's EDS project.) The search space is the set of alternative execution plans that represent the input query. These plans are equivalent in the sense that they yield the same result, but they differ in execution order and implementation of operations. Their new equivalence criterion captures all aspects of parallelism and scheduling in an execution plan. By not including scheduling, the optimizer may lose the better plans.The search strategy explores the search space and selects the best plan. It defines which plans are examined and in which order. Because the search space is large enough to include four types of processing trees, the optimizer uses efficient, nonexhaustive search strategies to reduce the cost of a large search space.The cost model predicts the cost of an execution plan. To be accurate, it needs some knowledge of the parallel execution environment. The cost model abstracts the parallel execution system as operator cost functions and the database as physical schema information. In a parallel database system, the richness of the execution environment makes cost modeling difficult. In contrast to sequential execution, a parallel execution plan uses intraoperation and interoperation parallelism. Interoperation parallelism includes dataflow, or pipeline, execution, as well as independent execution. The cost model's necessary simplifications introduce the potential for errors. The authors designed a cost model easily adaptable to either the distributed- or shared-memory target architecture. Thus, the DBS3 optimizer is portable to either architecture.