Plone R-Tree Spatial Index

It's especially gratifying to be part of a humanities computing project that is doing more than just helping out the humanities. We're actually succeeding -- through collaboration with others and careful decisions about what to invent and when -- in identifying areas where we can contribute software that helps both humanistic and extra-humanistic endeavors alike.

Case in point: Sean's work with others across the Plone and geo-python spectrum to produce a spatial index for Plone. This mechanism takes spatial content in Plone (like that in our Pleiades site) and does some pre-processing to set up a data structure that's optimized for doing geographical search. This version focuses on the ability to find a subset of spatially referenced Plone content that intersects with a bounding box (a rectangle on the earth's surface).

The test results Sean showed me yesterday were impressive. As compared with a brute-force, live intersection query of our existing Pleiades data, the spatial index did the job more quickly ... by 4 orders of magnitude (brute force took about 12 seconds; index-aided less than 0.1 second).

We're continuing testing and development toward upgrades that will allow Pleiades users to exploit this new code as they try to find items of interest on our site. Stay tuned for the rollout!

Sean's participation in this work was funded by our grant from the National Endowment for the Humanities.