[prev] 21 [next]

Join-tree Generation (cont)

Genetic query optimiser (geqo):
  • uses genetic algorithm (GA) to generate path trees
  • based on GA designed for "travelling salesman" problem
  • goals of this approach:
    • find near-optimal solution
    • examine far less than entire search space
  • used as path generator in PostgreSQL for large joins
  • threshold determined by geqo_threshold config param
Code in:   backend/optimizer/geqo/*.c