splitVector is used by sharding and returns the split points for a collection. It shows pretty impressive performance while doing so. There are many cases where it can be extremely useful to know to split points of a collection, for example:
- to subdivide workload accross application threads
- to subdivide workload for map reduce
There is no easy alternative for the application in case it is not aware of the distribution of a key.
In the context of sharding, mongos could just return the chunk ranges.
This should be made available to a 'read' or 'readWrite' application user.
It seems also that the hadoop connector currently relies on these things, so we should make it properly supported.