[postgis-devel] New node splitting algorithm for GiST

Alexander Korotkov aekorotkov at gmail.com
Tue Nov 13 22:19:23 PST 2012


Paul,

Who are expected to try it? I think in current state it's unlikely that
someone would try it until you ask him in person.

Also, ITSM you selected extremely cautious strategy. It would be reasonable
to have a macro if we had some good algorithm of split before. For example,
split algorithm from R*-tree. But "New linear node splitting" sucks so
much...

------
With best regards,
Alexander Korotkov.

On Wed, Nov 14, 2012 at 2:14 AM, Paul Ramsey <pramsey at opengeo.org> wrote:

> This is now on trunk, with a #define KOROTKOV_SPLIT in
> gserialized_gist_2d.c to turn it on/off. Some extra testing (you have
> to build a new index to get the new split in effect, just querying an
> existing index will make no difference at all) to ensure we have
> more/better performance would be great.
>
> http://trac.osgeo.org/postgis/ticket/1895
>
> P.
>
> On Sun, Jul 1, 2012 at 8:00 AM, Alexander Korotkov <aekorotkov at gmail.com>
> wrote:
> > Done: http://trac.osgeo.org/postgis/ticket/1895
> >
> > ------
> > With best regards,
> > Alexander Korotkov.
> >
> > On Sun, Jul 1, 2012 at 5:54 PM, Paragon Corporation <lr at pcorp.us> wrote:
> >>
> >> Alex,
> >>
> >> Can you attach this to a ticket.  That way Paul won't forget or one of
> us
> >> can remind him when he does :)
> >>
> >> http://trac.osgeo.org/postgis/
> >>
> >> Slate it for 2.1.0
> >>
> >> Thanks,
> >> Regina
> >>
> >> ________________________________
> >> From: postgis-devel-bounces at postgis.refractions.net
> >> [mailto:postgis-devel-bounces at postgis.refractions.net] On Behalf Of
> >> Alexander Korotkov
> >> Sent: Sunday, July 01, 2012 8:33 AM
> >> To: PostGIS Development Discussion
> >> Subject: Re: [postgis-devel] New node splitting algorithm for GiST
> >>
> >> On Sat, Jun 30, 2012 at 10:59 PM, Paul Ramsey <pramsey at opengeo.org>
> wrote:
> >>>
> >>> No progress, still an "item of interest" in my list of things I might
> >>> do. If you prepare a compile-time conditional patch, I'd be interested
> >>> in reviewing and applying it.
> >>
> >>
> >> OK, it's here.
> >> Just an small example. Without patch.
> >>
> >> test=# create index geonames_idx on geonames using gist (point);
> >> CREATE INDEX
> >> Time: 113796,848 ms
> >>
> >> test=# explain (analyze, buffers) select * from geonames where point &&
> >> 'BOX(34.4671 126.631,34.5023 126.667)'::box2d::geometry;
> >>
> >> QUERY PLAN
> >>
> >>
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> >>  Index Scan using geonames_idx on geonames  (cost=0.00..14.05 rows=2
> >> width=128) (actual time=0.589..0.876 rows=11 loops=1)
> >>    Index Cond: (point &&
> >>
> '0103000000010000000500000016FBCBEEC93B4140AAF1D24D62A85F4016FBCBEEC93B4140A69BC420B0AA5F40F163CC5D4B404140A69BC420B0AA5F40F163CC5D4B404140AAF1D24D62A85F4016FBCBEEC93B4140AAF1D24D62A85F40'::geometry)
> >>    Buffers: shared hit=26
> >>  Total runtime: 0.927 ms
> >> (4 rows)
> >>
> >> With patch.
> >>
> >> test=# create index geonames2_idx on geonames2 using gist (point);
> >> CREATE INDEX
> >> Time: 118382,076 ms
> >>
> >> test=# explain (analyze, buffers) select * from geonames2 where point &&
> >> 'BOX(34.4671 126.631,34.5023 126.667)'::box2d::geometry;
> >>
> >>
> >> QUERY PLAN
> >>
> >>
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> >>  Index Scan using geonames2_idx on geonames2  (cost=0.00..22.40 rows=4
> >> width=128) (actual time=0.209..0.225 rows=11 loops=1)
> >>    Index Cond: (point &&
> >>
> '0103000000010000000500000016FBCBEEC93B4140AAF1D24D62A85F4016FBCBEEC93B4140A69BC420B0AA5F40F163CC5D4B404140A69BC420B0AA5F40F163CC5D4B404140AAF1D24D62A85F4016FBCBEEC93B4140AAF1D24D62A85F40'::geometry)
> >>    Buffers: shared hit=11
> >>  Total runtime: 0.276 ms
> >> (4 rows)
> >>
> >> ------
> >> With best regards,
> >> Alexander Korotkov.
> >>
> >>
> >> _______________________________________________
> >> postgis-devel mailing list
> >> postgis-devel at postgis.refractions.net
> >> http://postgis.refractions.net/mailman/listinfo/postgis-devel
> >>
> >
> >
> > _______________________________________________
> > postgis-devel mailing list
> > postgis-devel at postgis.refractions.net
> > http://postgis.refractions.net/mailman/listinfo/postgis-devel
> >
> _______________________________________________
> postgis-devel mailing list
> postgis-devel at lists.osgeo.org
> http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-devel/attachments/20121114/f93760a2/attachment-0001.html>


More information about the postgis-devel mailing list