This is related to #59. It is becoming clear that there is no need for anything in the implementation's backend storage other than 'BlobStorage' to provide queries - so why not make life easier for clients who just want to make queries by hiving off the query API into a standalone piece that doesn't require all of the baggage in 'World' and its attendant memory footprint and storage woes that are making the goal of near-linear performance a problem.
It has been shown that the blob storage implementation does scale linearly (or at worst linear * logarithmic), so this would yield a performance benefit for the likely situation where many queries are made by an application, but few (or no) revisions.
It would also allow things such as batched revisions in a session.
This is related to #59. It is becoming clear that there is no need for anything in the implementation's backend storage other than 'BlobStorage' to provide queries - so why not make life easier for clients who just want to make queries by hiving off the query API into a standalone piece that doesn't require all of the baggage in 'World' and its attendant memory footprint and storage woes that are making the goal of near-linear performance a problem.
It has been shown that the blob storage implementation does scale linearly (or at worst linear * logarithmic), so this would yield a performance benefit for the likely situation where many queries are made by an application, but few (or no) revisions.
It would also allow things such as batched revisions in a session.