[postgis-users] High Concurrency R* in GiST?
Howard Butler
hobu.inc at gmail.com
Tue Dec 6 09:17:50 PST 2011
http://libspatialindex.github.com/ is a C/C++ implementation of a R* with quadratic splitting that supports bulk loading. It doesn't integrate with PostGIS, of course, but you may find it useful.
Additionally, http://toblerity.github.com/rtree/ is available to allow you to play with it in Python for rapid prototyping.
Hope this helps,
Howard
On Dec 6, 2011, at 10:58 AM, C. Mundi wrote:
> Indeed, I am a strong believer that "worse is better" in the absence of evidence. It just so happens that I have evidence that R* is significantly advantaged over plain R in my particular application. So the question becomes, can I gain enough productivity elsewhere to make the impact of R v. R* moot. I expect I can, now that the hope of free lunch has been taken away. :)
>
> Thanks for the link -- it is one of my favorites.
>
> Carlos
> On Dec 6, 2011 2:44 AM, "Jan Hartmann" <j.l.h.hartmann at uva.nl> wrote:
> "Worse is better" :-) See:
>
> http://www.jwz.org/doc/worse-is-better.html
>
> Cheers,
>
> Jan
>
> On 12/05/2011 10:09 PM, Paul Ramsey wrote:
>> On Mon, Dec 5, 2011 at 11:05 AM, C. Mundi <cmundi at gmail.com>
>> wrote:
>>
>>
>>> I get the impression that GiST hides a lot of
>>> implementation details. So I am hungry for details which will help me
>>> assess postGIS/postgreSQL for my application.
>>>
>> This is the key point, and it is so: the physical implementation
>> details are hidden behind the GiST API. As a result the R-Tree
>> implementation is a "standard" one, not an R* (though the split method
>> in Ang/Tan not Guttman). And as a result you can't do things like
>> rebalance the tree as specified in the R* recipe. The GiST API really
>> is quite narrow. You have the consistent function to control reads and
>> the compress/picksplit controlling writes.
>>
>> So if you're looking for optimal tree construction you've come to the
>> wrong place. The primary benefit of the PostGIS indexing system is not
>> it's optimal nature but its existence: it's already here, you can
>> insert and query data with simple SQL, it does do locking and
>> consistent operations thanks to the postgresql infrastructure wrapped
>> around it.
>>
>> As an architect my recommendation would be: since the development
>> overhead in building your system from scratch will be quite high,
>> investing the time into a load test on PostGIS first could save you a
>> lot of time if it turns out that even our imperfect system is actually
>> good enough to meet your needs.
>>
>> Best,
>>
>> P.
>> _______________________________________________
>> postgis-users mailing list
>>
>> postgis-users at postgis.refractions.net
>> http://postgis.refractions.net/mailman/listinfo/postgis-users
>
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
>
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
More information about the postgis-users
mailing list