index advisor

Lists: pgsql-hackerspgsql-patches
From: Kai-Uwe Sattler <kus(at)tu-ilmenau(dot)de>
To: pgsql-patches(at)postgresql(dot)org
Subject: index advisor
Date: 2006-10-13 18:49:05
Message-ID: 2261C794-2772-42A9-88F5-F05926FD187B@tu-ilmenau.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers pgsql-patches

Hi,
here is a patch implementing an index recommendation advisor for
7.4.13. It consists of extensions to the planner and the catalog as
well as a command line tool pg_advise in contrib. The index advisor
works as part of the EXPLAIN statement, i.e. by
set enable_indexadvisor=true;
explain select ...
you will find the recommended indexes in pg_indexadvisor afterwards.

Comments are welcome.
Best,
Kai

Attachment Content-Type Size
indexadvisor.patch.gz application/x-gzip 18.2 KB

From: Andrew Dunstan <andrew(at)dunslane(dot)net>
To: Kai-Uwe Sattler <kus(at)tu-ilmenau(dot)de>
Cc: pgsql-patches(at)postgresql(dot)org
Subject: Re: index advisor
Date: 2006-10-13 19:07:50
Message-ID: 452FE406.9020009@dunslane.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers pgsql-patches

Kai-Uwe Sattler wrote:
> Hi,
> here is a patch implementing an index recommendation advisor for
> 7.4.13. It consists of extensions to the planner and the catalog as
> well as a command line tool pg_advise in contrib. The index advisor
> works as part of the EXPLAIN statement, i.e. by
> set enable_indexadvisor=true;
> explain select ...
> you will find the recommended indexes in pg_indexadvisor afterwards.
>

You know we don't put new features on stable branches, right? If you
want to submit a new feature it has to be against CVS HEAD (and we are
currently in feature freeze there too)

cheers

andrew


From: "Jim C(dot) Nasby" <jim(at)nasby(dot)net>
To: Andrew Dunstan <andrew(at)dunslane(dot)net>
Cc: Kai-Uwe Sattler <kus(at)tu-ilmenau(dot)de>
Subject: Re: [PATCHES] index advisor
Date: 2006-10-13 19:10:45
Message-ID: 20061013191045.GM28647@nasby.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers pgsql-patches

Moving to -hackers...

On Fri, Oct 13, 2006 at 03:07:50PM -0400, Andrew Dunstan wrote:
> Kai-Uwe Sattler wrote:
> >Hi,
> >here is a patch implementing an index recommendation advisor for
> >7.4.13. It consists of extensions to the planner and the catalog as
> >well as a command line tool pg_advise in contrib. The index advisor
> >works as part of the EXPLAIN statement, i.e. by
> >set enable_indexadvisor=true;
> >explain select ...
> >you will find the recommended indexes in pg_indexadvisor afterwards.
> >
>
>
> You know we don't put new features on stable branches, right? If you
> want to submit a new feature it has to be against CVS HEAD (and we are
> currently in feature freeze there too)

This patch was submitted so people (ie: Simon) could see what had been
done for index recommendations.
--
Jim Nasby jim(at)nasby(dot)net
EnterpriseDB http://enterprisedb.com 512.569.9461 (cell)


From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-hackers(at)postgresql(dot)org, Andrew Dunstan <andrew(at)dunslane(dot)net>
Cc: Kai-Uwe Sattler <kus(at)tu-ilmenau(dot)de>, pgsql-patches(at)postgresql(dot)org
Subject: Re: index advisor
Date: 2006-10-13 22:05:33
Message-ID: 22801.1160777133@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers pgsql-patches

Andrew Dunstan <andrew(at)dunslane(dot)net> writes:
> Kai-Uwe Sattler wrote:
>> here is a patch implementing an index recommendation advisor for
>> 7.4.13.

> You know we don't put new features on stable branches, right?

I think you forgot the context --- somebody asked Kai-Uwe to send what
he had. There was no intention that this would get applied as-is, and
no expectation that Kai-Uwe would do the legwork to update it to HEAD
before we decide if we're interested or not.

regards, tom lane


From: "Andrew Dunstan" <andrew(at)dunslane(dot)net>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: [PATCHES] index advisor
Date: 2006-10-13 22:38:51
Message-ID: 3181.24.211.165.134.1160779131.squirrel@www.dunslane.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers pgsql-patches


Tom Lane wrote:
> Andrew Dunstan <andrew(at)dunslane(dot)net> writes:
>> Kai-Uwe Sattler wrote:
>>> here is a patch implementing an index recommendation advisor for
>>> 7.4.13.
>
>> You know we don't put new features on stable branches, right?
>
> I think you forgot the context --- somebody asked Kai-Uwe to send what
> he had. There was no intention that this would get applied as-is, and
> no expectation that Kai-Uwe would do the legwork to update it to HEAD
> before we decide if we're interested or not.
>

OK, my apologies.

cheers

andrew


From: "Simon Riggs" <simon(at)2ndquadrant(dot)com>
To: "Kai-Uwe Sattler" <kus(at)tu-ilmenau(dot)de>
Cc: <pgsql-patches(at)postgresql(dot)org>
Subject: Re: index advisor
Date: 2006-10-15 16:22:33
Message-ID: 1160929353.3957.15.camel@silverbirch.site
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers pgsql-patches

On Fri, 2006-10-13 at 20:49 +0200, Kai-Uwe Sattler wrote:

> here is a patch implementing an index recommendation advisor for
> 7.4.13. It consists of extensions to the planner and the catalog as
> well as a command line tool pg_advise in contrib. The index advisor
> works as part of the EXPLAIN statement, i.e. by
> set enable_indexadvisor=true;
> explain select ...
> you will find the recommended indexes in pg_indexadvisor afterwards.
>
> Comments are welcome.

Thanks for submitting.

OK, I see a 12,000 line patch, developed by 3 authors using the concepts
of virtual indexes and recommendation. The patch is freshly cut, though
is against the 7.4 branch. Nothing too bad to port on a first scan.

The comments are very sparse, since I understand much of the earlier
documentation is in German. I don't read that language myself, but I'm
sure many readers do. Could you can provide what you have, or any
further docs that would help the community?

Do you have references to the Master's theses that this work derives
from? Are there any restrictive covenants on this work, licencing
restrictions, intellectual property rights etc? Does this work utilise
any known patent? We'll need to get all of that in place also before I
start looking through the code in any detail.

After that, I'll look at this to develop an architectural review myself,
not yet looking at the code/quality. We can discuss porting to 8.2 when
everybody's happy to proceed.

--
Simon Riggs
EnterpriseDB http://www.enterprisedb.com