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.
Similar content being viewed by others
Author information
Authors and Affiliations
Additional information
Received October 1996 / Accepted January 1998
Rights and permissions
About this article
Cite this article
Kabra, N., DeWitt, D. OPT++ : an object-oriented implementation for extensible database query optimization. The VLDB Journal 8, 55–78 (1999). https://doi.org/10.1007/s007780050074
Issue Date:
DOI: https://doi.org/10.1007/s007780050074