Tabu search optimization of large join queries

  • Tadeusz Morzy
  • Maciej Matysiak
  • Silvio Salza
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 779)


Query optimization is a hard combinatorial optimization problem, which makes enumerative optimization strategies unacceptable as the query size grows. In order to cope with complex large join queries, combinatorial optimization algorithms, such as Simulating Annealing and Iterative Improvement were proposed as alternatives to traditional enumerative algorithms. In this paper, we propose to apply to optimization of complex large join queries the relatively new combinatorial optimization technique called Tabu Search. We have tested this technique on queries of different sizes and different types and have shown that Tabu Search obtains almost always better query execution plans than other combinatorial optimization techniques.


Simulated Annealing Tabu Search Tabu List Query Optimization Query Type 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    W. W. Chu and P. Hurley, Optimal Query Processing for Distributed Database Systems, IEEE Transactions on Computers C-31 (9), 1982, pp. 835–850.Google Scholar
  2. 2.
    D.H. Fishman, et. al., IRIS: An Object-Oriented DBMS, ACM Transactions on Office Information Systems, 5(1), 1987, pp. 48–69.Google Scholar
  3. 3.
    F. Glover, Tabu Search-part I, ORSA Journal on Computing 1(1989), pp.190–206.Google Scholar
  4. 4.
    F. Glover, Tabu Search-part II, ORSA Journal on Computing 2(1990), pp.4–32.Google Scholar
  5. 5.
    D. E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning, Addison-Wesley, 1989.Google Scholar
  6. 6.
    G. Graefe, R. L. Cole, D. L. Davison, W. J. McKenna, and R. H. Wolniewicz, Extensible Query Optimization and Parallel Execution in Volcano, in Query Processing for Advanced Database Applications (eds. J. C. Freytag, G. Vossen and D. Maier), Morgan-Kaufman, San Mateo, CA, 1992.Google Scholar
  7. 7.
    G. Graefe and W. J. McKenna, The Volcano Optimizer Generator: Extensibility and Efficient Search, Proc. of the 9th Conference on Data Engineering, Vienna, Austria, 1993, pp. 209–218.Google Scholar
  8. 8.
    P. Hansen, B. Jaaumard, Algorithms for the maximum satisfiability problem, RUT-COR research report 43–87, Rutgers University, 1987.Google Scholar
  9. 9.
    A. Hertz, D. de Werra, Using Tabu Search Techniques for Graph Coloring, Computing, Vol. 39, pp. 345–351, 1987.Google Scholar
  10. 10.
    T. Ibaraki and T. Kameda, Optimal Nesting for Computing N-relational Joins, ACM Transactions on Database Systems, 9(3), 1984, pp. 482–502.Google Scholar
  11. 11.
    Y. E. Ioannidis and Y. Kang, Randomized Algorithms for Optimizing Large Join Queries, Proc. of ACM-SIGMOD Conference on Management of Data, 1990, pp. 312–321.Google Scholar
  12. 12.
    Y. E. Ioannidis and Y. Kang, Left-Deep vs. Bushy Trees: An Analysis of Strategy Spaces and its Implications for Query Optimization, Proc. of ACM-SIGMOD Conference on Management of Data, 1991, pp. 168–177.Google Scholar
  13. 13.
    Y. E. Ioannidis and E. Wong, Query Optimization by Simulated Annealing, Proc. of ACM-SIGMOD Conference on Management of Data, 1987, pp. 9–22.Google Scholar
  14. 14.
    M. Jarke and J. Koch, Query Optimization in Database Systems, ACM Computing Surveys, Vol. 16, No. 2, 1984, pp. 111–152.Google Scholar
  15. 15.
    R. Krishnamurthy, H. Boral, and C. Zaniola, Optimization of Nonrecursive Queries, Proc. of the 12th VLDB Conference, Kyoto, Japan, 1986, pp. 128–137.Google Scholar
  16. 16.
    G.M. Lohman, C. Mohan, L.M. Haas, B.G. Lindsay, P.G. Salinger, P.F. Wilms, and D. Daniels, Query Processing in R *, Query Processing in Database Systems (Kim, Batory, and Reiner (eds.), 1985), pp.31–47, Springer-Verlag Pub.Google Scholar
  17. 17.
    K. Ono and G. M. Lohman, Measuring the Complexity of Join Enumeration in Query Optimization, Proc. of the 16th VLDB Conference, Brisbane, Australia, 1990, pp. 314–325.Google Scholar
  18. 18.
    P.G. Selinger, M.M. Astrahan, D.D. Chamberlin, R.A. Lorie, and T.G. Price, Access Path Selection in a Relational Database Management System, Proc. of ACM-SIGMOD, 1979, pp. 23–34.Google Scholar
  19. 19.
    A. Swami, Optimization of Large Join Queries: Combining Heuristics and Combinatorial Techniques, Proc. of ACM-SIGMOD Conference on Management of Data, 1989, pp. 367–376.Google Scholar
  20. 20.
    A. Swami and A. Gupta, Optimization of Large Join Queries, Proc. of ACM-SIGMOD Conference on Management of Data, 1988, pp.8–17.Google Scholar
  21. 21.
    A. Swami and B. R. Iyer, A Polynomial Time Algorithm for Optimizing Join Queries, Proc. of the 9th IEEE Conference on Data Engineering, Vienna, Austria, 1993, pp. 345–354.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • Tadeusz Morzy
    • 1
  • Maciej Matysiak
    • 1
  • Silvio Salza
    • 2
    • 3
  1. 1.Institute of Computing SciencesTechnical University of PoznańPoznańPoland
  2. di Informatica e SistemisticaUniversità di Roma “La Sapienza”RomeItaly
  3. 3.Istituto di Analisi dei Sistemi ed Informatica del CNRRomaItaly

Personalised recommendations