Indexing each database shard is basically similar to indexing a non-sharded database.
As each shard holds and manages a unique dataset, indexing is performed
per-shard and indexes are stored only on the shard that created and uses them.
Map-Reduce Indexes on a Sharded Database
Map-reduce indexes on a sharded database are used to reduce data both over each
shard during indexation, and on the orchestrator machine each time a query uses them.
- Reduction by each shard during indexation
Similarly to non-sharded databases, when shards index their data they reduce
the results by map-reduce indexes.
- Reduction by the orchestrator during queries
When a query is executed over map-reduce indexes the orchestrator
distributes the query to the shards, collects and combines the results,
and then reduces them again.
Learn about querying map-reduce indexes in a sharded database here.
Unsupported Indexing Features
Unsupported or yet-unimplemented indexing features include: