Biddy wrote:

MarĂ­a, thank you for the fast reply. However, these docs refer to the usage of GIST.

If I understand it correctly, an R-tree is implemented on top of GIST.
What if I don't want to use an R-tree? If I wanted to implement my own ...let's say I want to implement a quadtree or some other new, fancy index. How would I go about doing it?

The GIST API currently does not support space partition-based nor ordered indices (see http://www.postgresql.org/docs/8.4/interactive/gist-implementation.html for the exact details). So if you wanted to implement a quadtree or nearest neighbour type index searches then you'd need to alter the GIST API or invent another index AM in PostgreSQL first.

You may find the SP-GIST project interesting in this respect: http://www.cs.purdue.edu/spgist/.

Additionally, is there a way to change the attributes with which the R-tree is built? Or at least see how the R-tree is built?

It depends what attributes you are trying to modify. If they can be defined in terms of the GIST picksplit function then it is likely possible.

In terms of visualising the R-Tree itself, Oleg and Teodor's gevel module from http://www.sai.msu.su/~megera/postgres/gist/ can be used as an aid to generate output suitable for rendering.


HTH,

Mark.

--
Mark Cave-Ayland - Senior Technical Architect
PostgreSQL - PostGIS
Sirius Corporation plc - control through freedom
http://www.siriusit.co.uk
t: +44 870 608 0063

Sirius Labs: http://www.siriusit.co.uk/labs
_______________________________________________
postgis-users mailing list
postgis-users@postgis.refractions.net
http://postgis.refractions.net/mailman/listinfo/postgis-users

Reply via email to