OPT++ : an object-oriented implementation for extensible database query optimization

  • Authors:
  • Navin Kabra;David J. DeWitt

  • Affiliations:
  • Computer Sciences Department, University of Wisconsin–Madison, Madison, WI-53706, USA. e-mail: {navin, dewitt}@cs.wisc.edu;Computer Sciences Department, University of Wisconsin–Madison, Madison, WI-53706, USA. e-mail: {navin, dewitt}@cs.wisc.edu

  • Venue:
  • The VLDB Journal — The International Journal on Very Large Data Bases
  • Year:
  • 1999

Quantified Score

Hi-index 0.01

Visualization

Abstract

In this paper we describe the design and implementation of OPT++, a tool for extensible database query optimization that uses an object-oriented design to simplify the task of implementing, extending, and modifying an optimizer. Building an optimizer using OPT++ makes it easy to extend the query algebra (to add new query algebra operators and physical implementation algorithms to the system), easy to change the search space, and also to change the search strategy. Furthermore, OPT++ comes equipped with a number of search strategies that are available for use by an optimizer-implementor. OPT++ considerably simplifies both, the task of implementing an optimizer for a new database system, and the task of evaluating alternative optimization techniques and strategies to decide what techniques are best suited for that database system. We present the results of a series of performance studies. These results validate our design and show that, in spite of its flexibility, OPT++ can be used to build efficient optimizers.