U kunt uw schema als volgt opnieuw ontwerpen:
{
pairs:[
{k: "a", v: 5775},
{k: "b", v: "b1"},
]
}
Vervolgens indexeert u uw sleutel:
db.people.ensureIndex({"pairs.k" : 1})
Hierna kunt u zoeken op exacte overeenkomst:
db.ent.find({'pairs.k':"a"})
Als u Sparse-index gebruikt en uw huidige schema, voorgesteld door @WesFreeman, moet u een index maken voor elke sleutel die u wilt doorzoeken. Het kan de schrijfprestaties beïnvloeden of is niet acceptabel als uw sleutels niet statisch zijn.