Abstract: A system and method for optimizing a database query is herein disclosed. The system consists of a search engine and a database implementor that determines an optimal plan for executing a SQL query. The SQL query is represented as a query tree consisting of a number of nested expressions. The search engine generates a number of plans from which an optimal plan is selected. Plans are generated through the application of a set of rules consisting of implementation and transformation rules. Implementation rules are used to obtain plans. Transformation rules are used to determine equivalent expressions. A plan for the query tree entails finding plans for each expression within the tree where each plan is generated in accordance with a prescribed set of rules. The database implementor selects the set of rules such that more promising plans are generated rather than generating all possible plans.
Type:
Grant
Filed:
August 23, 1996
Date of Patent:
October 13, 1998
Assignee:
Tandem Computers, Inc.
Inventors:
Goetz Graefe, Pedro Celis, Jay Vaishnav, Hansjorg Zeller