Sto usando la libreria spatialindex da http://libspatialindex.github.com/scelta dei parametri per R * dell'albero utilizzando SpatialIndex biblioteca
sto creando un * albero R nella memoria principale:
size_t capacity = 10;
bool bWriteThrough = false;
fileInMem = StorageManager
::createNewRandomEvictionsBuffer(*memStorage, capacity, bWriteThrough);
double fillFactor = 0.7;
size_t indexCapacity = 10;
size_t leafCapacity = 10;
size_t dimension = 2;
RTree::RTreeVariant rv = RTree::RV_RSTAR;
tree = RTree::createNewRTree(*fileInMem, fillFactor, indexCapacity,
leafCapacity, dimension, rv, indexIdentifier);
Poi sto inserimento di un grande numero di scatole di delimitazione, attualmente circa 2,5 milioni (rete stradale della Baviera in Germania). Più tardi cercherò di inserire tutte le strade dell'Europa.
Quali sono i parametri validi per il gestore di archiviazione e il rtree? Per lo più sto usando il rtree per trovare le strade più vicine a una determinata query (bbox intersezione).
+1 Perché non avevo mai sentito parlare di un albero R * prima ed è piuttosto interessante. http://en.wikipedia.org/wiki/R*_tree –
beh, si tratta di una struttura di indice piuttosto standard, utilizzata per rispondere alle query dell'intervallo di spazio (concedimi tutti gli oggetti che rientrano in una determinata query del rettangolo) e alle domande più vicine (dammi gli oggetti k-più vicini alla mia query punto). Se sei interessato, dai uno sguardo agli indici spaziali in generale: http://en.wikipedia.org/wiki/Spatial_database – arthur