I need to create an 3D R*-tree, perhaps for long time storage, but performance will also be an issue. In order to create the tree, I decided to use Boost's spacialindex and basically found two possible methods.
Either I create it directly using objects as it's here: Index of polygons stored in vector, however that does not allow me to store and load it without creating the R*-tree again.
Or I could use a mapped file as explained here: Index stored in mapped file using Boost.Interprocess, however, I am not sure if the performance of queries is good enough in this case.
My r-tree will contain several thousand entries, but most likely less than about 100,000. Now my question is, is there any strong performance issue by using mapped files compared to using the standard objects? Also, if the creation of an R*-tree of about 100,000 values does not take a substanial amount of time (I could have all bounding boxes and corresponding keys/data stored in a file) then it might be a better option to skip the mapped file and just create the tree every time I run the program?
Hopefully, somebody can help me here, as the documentation does not really provide much information (though it's still worlds better than the documentation of libspacialindex).