[OSM-dev] on-disk indexing of geodata
Freek
freek_osm at vanwal.nl
Fri Oct 17 13:31:26 BST 2008
On Friday 17 October 2008, Sascha Silbe wrote:
> On Fri, Oct 17, 2008 at 11:30:07AM +0200, Marcus Wolschon wrote:
> > Do you have any Idea how such an index can be constructed, given that
> > * the indexed dataset is mutable
See for example this follow-up paper on "Hilbert" R-trees:
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.45.9180
> > * At no time can the complete index be loaded into memory (e.g. for
> > rebuilding the index).
The whole point of R-trees is that they are efficient when stored in external
memory. In the case of Hilbert R-trees, bulk-loading is particularly easy
because you can just use an external-memory sorting algorithm to sort your
input data along a space-filling curve, store consecutive sets of input-item
bounding boxes in the leaves of the tree, and build the rest of the tree
bottom-up.
> Unfortunately not. I suppose once you're dealing with non-constant data,
> looking at a ready-made database implementation is worth a try. Most of
> the overhead of usual databases will probably come from having to
> support updates.
Also, they often use (as far as I can tell) the original R-tree algorithm by
Guttman from 1984. In the meantime more efficient algorithms have been
developed, the Hilbert R-tree being a particularly practical and quite
efficient one.
--
Freek
More information about the dev
mailing list