Dans MongoDB, les requêtes de recherche peuvent être construites en utilisant bson.M (non ordonnés) ou bson.D (ordonnés). La documentation suggère d'utiliser bson.D lorsque l'ordre des éléments est important.
La principale question est de savoir si l'utilisation de structures ordonnées ou non ordonnées influence le plan de requête généré par la requête de MongoDB. optimiseur.
Dans la plupart des cas, l'utilisation de bson.M ou bson.D permettra n'a pas d'impact sur l'optimisation du plan de requête. L'optimiseur de MongoDB est suffisamment intelligent pour identifier et utiliser les index appropriés quel que soit l'ordre des champs dans le filtre. Cela est vrai même pour les index composés qui s'étendent sur plusieurs champs.
Cependant, il existe certaines exceptions où l'ordre des champs dans le filtre peut avoir de l'importance :
Pour les requêtes de recherche où l'ordre des champs n'a pas d'importance, bson.M est généralement préféré en raison de sa simplicité et de sa concision. Pour le tri ou lorsqu'il est essentiel de maintenir l'ordre des champs dans les documents insérés, bson.D doit être utilisé.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!