Página inicial do Docs → Desenvolver aplicações → Manual do MongoDB
Analisar o desempenho da query
Nesta página
Os resultados do plano explicativos para queries estão sujeitos a alterações entre as versões MongoDB.
Avalie o desempenho de uma query
Considere uma coleção inventory
com os seguintes documentos:
{ "_id" : 1, "item" : "f1", type: "food", quantity: 500 } { "_id" : 2, "item" : "f2", type: "food", quantity: 100 } { "_id" : 3, "item" : "p1", type: "paper", quantity: 200 } { "_id" : 4, "item" : "p2", type: "paper", quantity: 150 } { "_id" : 5, "item" : "f3", type: "food", quantity: 300 } { "_id" : 6, "item" : "t1", type: "toys", quantity: 500 } { "_id" : 7, "item" : "a1", type: "apparel", quantity: 250 } { "_id" : 8, "item" : "a2", type: "apparel", quantity: 400 } { "_id" : 9, "item" : "t2", type: "toys", quantity: 50 } { "_id" : 10, "item" : "f4", type: "food", quantity: 75 }
Consulta sem Índice
A diferença entre o número de documentos correspondentes e o número de documentos examinados pode sugerir que, para melhorar a eficiência, a query pode se beneficiar do uso de um índice.
Consulta com índice
Para suportar a query no campo quantity
, adicione um índice no campo quantity
:
Sem o índice, a query verificaria toda a collection de 10
documentos para retornar 3
documentos correspondentes. A query também precisou verificar a totalidade de cada documento, potencialmente colocando-os na memória. Isso resulta em uma operação de query cara e potencialmente lenta.
Ao executar com um índice, a query verificou 3
entradas de índice e 3
documentos para retornar 3
documentos correspondentes, resultando em uma query muito eficiente.