Designing Query Optimization Plans
Go Up to Application Design Techniques
The optimization plan describes the way the optimizer has chosen to execute a query. For certain types of queries, the optimizer might not select the truly optimal plan. A human can analyze different alternate plans and specify a plan overriding the analysis of the optimizer. The result can be amazing improvements in performance for some types of queries. In some dramatic cases, this has been used to reduce a 15 minute query to three seconds.
The elements of plan selection are:
- Assigning indexes
- Combining indexes
- Determining join order
- Generating rivers
- Cost estimation
- Sort merges
InterBase supports syntax with the SELECT
expression in embedded SQL and DSQL to allow the user to specify the PLAN
for a query. The syntax also works with SELECT
statements in the body of a view, a stored procedure, or a trigger.
It is beyond the scope of this chapter to describe in detail the syntax of the PLAN
clause for specifying the execution plan, or techniques for analyzing queries manually. The section on SELECT
in the Language Reference includes some examples of using PLAN
.