MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

MongoDB :Requête lente, même avec index

Ensuite, le point ici était à la fois dans les sélections d'ordre d'index et de requête.

Si vous regardez votre sortie précédente de .explain() vous verrez qu'il y a une plage "min/max" sur l'élément "t" dans votre expression. En "déplaçant cela à la fin" de l'évaluation, vous autorisez d'autres éléments de filtrage qui sont plus importants pour l'expression globale (déterminez moins de correspondances possibles de "e" comme facteur principal avant de scanner si "t" dans essentiellement "tout" .

C'est un peu DBA, mais dans le monde NoSQL, je crois que cela devient un problème de programmeur.

Vous devez essentiellement construire votre "chemin de correspondance le plus court" le long des clés sélectionnées afin d'obtenir l'analyse la plus efficace. C'est pourquoi les résultats modifiés s'exécutent beaucoup plus rapidement.