Truly Adaptive Optimization: The Basic Ideas
A new approach to query optimization, truly adaptive optimization (TAO), is presented. TAO is a general optimization strategy and is composed of three elements:
1. a fast solution space search algorithm, derived from A*, which uses an informed heuristic lookahead;
2. a relaxation technique which allows to specify a tolerance on the quality of the resulting query execution plan;
3. a paradigm to prove the suboptimality of search subspaces. Non-procedural pruning rules can be used to describe specific problem knowledge, and can be easily added to the optimizer, as the specific problem becomes better understood.
The main contribution over previous research is the use of relaxation techniques and that TAO provides a unifying framework for query optimization problems, which models a complexity continuum going from fast heuristic searches to exponential optimal searches while guaranteeing a selected plan quality. In addition, problem knowledge can be exploited to speed the search up. As a preliminary example, the method is applied to query optimization for databases distributed over a broadcast network. Simulation results are reported.
KeywordsHeuristic Solution Database State Execution Plan Query Optimization Plan Quality
Unable to display preview. Download preview PDF.
- 1.Balbo, G., Di Leva, A., Sacco, G.M.: Adaptive query optimization in point-to-point networks. In: Schreiber, F.A. (ed.) Distributed Data Sharing Systems. North-Holland, Amsterdam (1984)Google Scholar
- 2.Chaudhuri, S.: An overview of query optimization in relational systems. In: Proceedings of the seventeenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems, pp. 34–43 (1998)Google Scholar
- 3.Hevner, A.R.: The optimization of query processing in distributed database systems, Ph.D. Thesis, Purdue University, W.Lafayette, IN (1979)Google Scholar
- 4.Hevner, R.A., Yao, S.B.: Query processing in distributed database systems. IEEE Trans. On Software Engineering SE-5(3) (1979)Google Scholar
- 5.Ilyas, I., et al.: Estimating compilation time of a query optimizer. In: Proceedings of the 2003 ACM SIGMOD international conference on Management of data, pp. 373–384 (2003)Google Scholar
- 6.Ioannidis, Y.E., Christodoulakis, S.: On the propagation of errors in the size of join results. In: Proceeding of the ACM SIGMOD Conf. (1991)Google Scholar
- 7.Ioannidis, Y.E., Kang, Y.C.: Randomized algorithms for optimizing large join queries. In: Proc. of the 1990 ACM SIGMOD Conf., pp. 312–321 (1990)Google Scholar
- 8.Kemper, A., et al.: A blackboard architecture for query optimization in object bases. In: Proceedings of the Conference on Very Large Data Bases (1993)Google Scholar
- 9.Kossmann, D., Stocker, K.: Iterative dynamic programming: A new class of query optimization algorithms. ACM Transactions on Database Systems 25(1) (2000)Google Scholar
- 11.Sacco, G.M.: Distributed query evaluation in local area networks. In: Proceed. IEEE Conf. on Data Engineering (1984)Google Scholar
- 12.Sacco, G.M.: Truly adaptive query optimization, Dept. of Computer Science, Univ. of Torino, Italy, TR 4/8/84 (1984)Google Scholar
- 13.Sacco, G.M.: Truly adaptive query optimization in point-to-point tree networks, Dept. of Computer Sciences, University of Torino, Italy, TR 3/21/89 (1989)Google Scholar
- 14.Selinger, P.G., et al.: Access path selection in a relational database management system. In: Proceed. ACM SIGMOD Conference (1979)Google Scholar
- 16.Waas, F., Galindo-Legaria, C.: Counting, enumerating, and sampling of execution plans in a cost-based query optimizer. In: Proceedings of the 2000 ACM SIGMOD Conference, pp. 499–509 (2000)Google Scholar
- 17.Williams, R., et al.: R*: An Overview of the Architecture. IBM Research, RJ3325 (1981); Reprinted in: Stonebraker, M. (ed.), Readings in Database Systems, 515–536. Morgan Kaufmann Publishers (1994)Google Scholar