CGO: A Sound Genetic Optimizer for Cyclic Query Graphs

  • Victor Muntés-Mulero
  • Josep Aguilar-Saborit
  • Calisto Zuzarte
  • Josep-L. Larriba-Pey
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3991)


The increasing number of applications requiring the use of large join queries reinforces the search for good methods to determine the best execution plan. This is especially true, when the large number of joins occurring in a query prevent traditional optimizers from using dynamic programming.

In this paper we present the Carquinyoli Genetic Optimizer (CGO). CGO is a sound optimizer based on genetic programming that uses a subset of the cost-model of IBM®DB2®Universal DatabaseTM(DB2 UDB) for selection in order to produce new generations of query plans. Our study shows that CGO is very competitive either as a standalone optimizer or as a fast post-optimizer. In addition, CGO takes into account the inherent characteristics of query plans like their cyclic nature.


Cost Model Mutation Operation Execution Plan Query Plan Genetic Optimizer 
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.


  1. 1.
    Bennett, K., Ferris, M.C., Ioannidis, Y.E.: A genetic algorithm for database query optimization. In: Belew, R., Booker, L. (eds.) Proceedings of the Fourth International Conference on Genetic Algorithms, San Mateo, CA, pp. 400–407. Morgan Kaufmann, San Francisco (1991)Google Scholar
  2. 2.
    Holland, J.: Adaption in natural and artificial systems. The University of Michigan Press, Ann Arbor (1975)Google Scholar
  3. 3.
    Ioannidis, Y.E., Wong, E.: Query optimization by simulated annealing. In: SIGMOD 1987: Proceedings of the 1987 ACM SIGMOD international conference on Management of data, pp. 9–22. ACM Press, New York (1987)CrossRefGoogle Scholar
  4. 4.
    Muntes, V., Aguilar, J., Zuzarte, C., Markl, V., Larriba, J.L.: Genetic evolution in query optimization: a complete analysis of a genetic optimizer. Technical Report UPC-DAC-RR-2005-21, Dept. d’Arqu. de Computadors. Universitat Politecnica de Catalunya (2005),
  5. 5.
  6. 6.
    Griffiths Selinger, P., Astrahan, M.M., Chamberlin, D.D., Lorie, R.A., Price, T.G.: Access path selection in a relational database management system. In: Proceedings of the 1979 ACM SIGMOD international conference on Management of data, pp. 23–34. ACM Press, New York (1979)CrossRefGoogle Scholar
  7. 7.
    Steinbrunn, M., Moerkotte, G., Kemper, A.: Heuristic and randomized optimization for the join ordering problem. VLDB Journal: Very Large Data Bases 6(3), 191–208 (1997)CrossRefGoogle Scholar
  8. 8.
    Stillger, M., Spiliopoulou, M.: Genetic programming in database query optimization. In: Koza, J.R., Goldberg, D.E., Fogel, D.B., Riolo, R.L. (eds.) Genetic Programming 1996: Proceedings of the First Annual Conference, Stanford University, CA, USA, pp. 28–31. MIT Press, Cambridge (1996)Google Scholar
  9. 9.
    Swami, A.: Optimization of large join queries: combining heuristics and combinatorial techniques. In: SIGMOD 1989: Proceedings of the 1989 ACM SIGMOD international conference on Management of data, pp. 367–376. ACM Press, New York (1989)CrossRefGoogle Scholar
  10. 10.
    Swami, A., Gupta, A.: Optimization of large join queries. In: SIGMOD 1988: Proceedings of the 1988 ACM SIGMOD international conference on Management of data, pp. 8–17. ACM Press, New York (1988)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Victor Muntés-Mulero
    • 1
  • Josep Aguilar-Saborit
    • 1
  • Calisto Zuzarte
    • 2
  • Josep-L. Larriba-Pey
    • 1
  1. 1.DAMA-UPC, Computer Architecture Dept.Universitat Politècnica de CatalunyaBarcelonaSpain
  2. 2.IBM Toronto Lab.IBM Canada LtdMarkhamCanada

Personalised recommendations