Re: star join optimization - Mailing list pgsql-hackers

From Robert Haas
Subject Re: star join optimization
Date
Msg-id CA+TgmoaH8A8o=aYty0oC3btKwrWQTCK9JTbktA3UJbVQP0wLaQ@mail.gmail.com
Whole thread Raw
In response to Re: star join optimization  (Rudyar <rudyar.cortes@gmail.com>)
Responses Re: star join optimization
List pgsql-hackers
On Mon, Nov 14, 2011 at 10:36 AM, Rudyar <rudyar.cortes@gmail.com> wrote:
> On 14/11/11 12:20, Robert Haas wrote:
>>
>> On Mon, Nov 14, 2011 at 8:25 AM, Rudyar<rudyar.cortes@gmail.com>  wrote:
>>>
>>> the hybrid hash join algorithm implemented in the current version of
>>> PostgreSQL has any kind of optimization
>>> for star join queries for Data Warehouse model?
>>
>> Not really.  As much as possible, we try to make the query optimizer a
>> general-purpose tool that can handle any query you happen to throw at
>> it, rather than putting in special-purpose hacks to cater to specific
>> types of queries.  I'm not aware of anything in particular that we
>> could do to better optimize the star-join case than what we do for any
>> other query.
>>
>> Now, one thing that was discussed a year or two ago was the
>> possibility of considering join algorithms that can handle more than
>> two tables at a time.  Currently, we don't do that, so a four-way join
>> will be implemented either by joining two tables, then the other two
>> tables, and then the results of those; or more commonly by joining two
>> tables, joining the results to a third table, and then joining those
>> results to the final table.  Due to the pipelined nature of our
>> executor, this works pretty well, but it's possible that there are
>> better algorithms out there.
>>
> Thanks Robert,
>
> I'm a new programmer in postgreSQL source code and I working in my tesis
> project about that optimizations to HHJ algorithm.
> I think so is very useful that optimizer recognize one star join and apply
> this optimizations..
> For example, SQL Server and Oracle databases implements star join query
> optimizations for OLAP queries in DW.
>
> How can contribute with my tesis project to postreSQL source code?

A good example might be to show us some of the specific cases that you
think can be improved.  Perhaps with a script to set up the test data,
and EXPLAIN ANALYZE output from the queries involved, and a
description of where you see an opportunity for improvement.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


pgsql-hackers by date:

Previous
From: Rudyar
Date:
Subject: Re: star join optimization
Next
From: Rudyar
Date:
Subject: Re: star join optimization