DocumentCode
2731912
Title
Robust Heuristics for Scalable Optimization of Complex SQL Queries
Author
Das, G.C. ; Haritsa, J.R.
Author_Institution
Database Syst. Lab., Indian Inst. of Sci., Bangalore, India
fYear
2007
fDate
15-20 April 2007
Firstpage
1281
Lastpage
1283
Abstract
Modern database systems incorporate a query optimizer to identify the most efficient "query execution plan" for executing the declarative SQL queries submitted by users. A dynamic-programming-based approach is used to exhaustively enumerate the combinatorially large search space of plan alternatives and, using a cost model, to identify the optimal choice. While dynamic programming (DP) works very well for moderately complex queries with up to around a dozen base relations, it usually fails to scale beyond this stage due to its inherent exponential space and time complexity. Therefore, DP becomes practically infeasible for complex queries with a large number of base relations, such as those found in current decision-support and enterprise management applications. To address the above problem, a variety of approaches have been proposed in the literature. Some completely jettison the DP approach and resort to alternative techniques such as randomized algorithms, whereas others have retained DP by using heuristics to prune the search space to computationally manageable levels. In the latter class, a well-known strategy is "iterative dynamic programming" (IDP) wherein DP is employed bottom-up until it hits its feasibility limit, and then iteratively restarted with a significantly reduced subset of the execution plans currently under consideration. The experimental evaluation of IDP indicated that by appropriate choice of algorithmic parameters, it was possible to almost always obtain "good" (within a factor of twice of the optimal) plans, and in the few remaining cases, mostly "acceptable" (within an order of magnitude of the optimal) plans, and rarely, a "bad" plan. While IDP is certainly an innovative and powerful approach, we have found that there are a variety of common query frameworks wherein it can fail to consistently produce good plans, let alone the optimal choice. This is especially so when star or clique components are present, increasing the complexity of t- e join graphs. Worse, this shortcoming is exacerbated when the number of relations participating in the query is scaled upwards.
Keywords
SQL; dynamic programming; query processing; complex SQL queries; database system; iterative dynamic programming; query execution plan; query optimizer; scalable optimization; Cost function; Database systems; Dynamic programming; Engines; Genetics; Iterative algorithms; Laboratories; Refining; Robustness;
fLanguage
English
Publisher
ieee
Conference_Titel
Data Engineering, 2007. ICDE 2007. IEEE 23rd International Conference on
Conference_Location
Istanbul
Print_ISBN
1-4244-0802-4
Type
conf
DOI
10.1109/ICDE.2007.368993
Filename
4221783
Link To Document