Re: TwoPO: experimental join order algorithm - Mailing list pgsql-hackers

From Jan Urbański
Subject Re: TwoPO: experimental join order algorithm
Date
Msg-id 4C52B148.70100@wulczer.org
Whole thread Raw
In response to TwoPO: experimental join order algorithm  (Adriano Lange <alange0001@gmail.com>)
Responses Re: TwoPO: experimental join order algorithm
List pgsql-hackers
On 24/07/10 15:20, Adriano Lange wrote:
> Hi,

Hi!

>
> I'd like to release the last version of my experimental join order
> algorithm (TwoPO - Two Phase Optimization [1]):
>
> http://git.c3sl.ufpr.br/gitweb?p=lbd/ljqo.git;a=summary
>
> This algorithm is not production-ready, but an experimental set of
> ideas, which need to be refined and evaluated. As the join order
> optimization is a hard problem, the evaluation of a search strategy is
> also a hard task. Therefore, I think the most important TODO item
> related to replacement of GEQO algorithm is to define a set of
> evaluation criteria considered as relevant.

Good to hear from you --  I don't know if you are aware about a 
simulated annealing join search module that I'm working on. When I first 
started, I planned to base is on the patch that you sent to -hackers 
some time ago (and actually, if you look at the repo for my module, 
twopo.c is still in there) but ended up doing it from scratch. However, 
reading your code was a big help in the beginning.

I gave a talk at this year's PGCon 
(http://www.pgcon.org/2010/schedule/events/211.en.html) and you will 
find your name in the acknowledgments section of the presentation :)

I'll make sure to read your new code and compare the approaches, my 
results so far are not perfect, but also not very pessimistic. I think 
there is actually a chance to replace GEQO with SA in the future, or at 
least to ship more join search modules with the standard distribution 
and gather field reports.

Cheers,
Jan


pgsql-hackers by date:

Previous
From: Greg Stark
Date:
Subject: Re: On Scalability
Next
From: Robert Haas
Date:
Subject: Re: reducing NUMERIC size for 9.1