- Indexes >
- Indexing Tutorials >
- Index Management Tutorials >
- Measure Index Use
Measure Index Use¶
On this page
Synopsis¶
Query performance is a good general indicator of index use; however, for more precise insight into index use, MongoDB provides a number of tools that allow you to study query operations and observe index use for your database.
See also
Index Concepts and Indexing Tutorials for more information.
Operations¶
Return Query Plan with explain()
¶
Use the db.collection.explain()
or the
cursor.explain()
method in executionStats mode to return statistics about the
query process, including the index used, the number of documents
scanned, and the time the query takes to process in milliseconds.
Run db.collection.explain()
or the cursor.explain()
method in allPlansExecution
mode to view partial execution statistics collected during plan
selection.
db.collection.explain()
provides information on the execution
of other operations, such as db.collection.update()
. See
db.collection.explain()
for details.
Control Index Use with hint()
¶
To force MongoDB to use a particular index for a
db.collection.find()
operation, specify the index with the
hint()
method. Append the hint()
method to the find()
method. Consider the
following example:
To view the execution statistics for a specific index, append to the
db.collection.find()
the hint()
method
followed by cursor.explain()
, e.g.:
Or, append hint()
method to
db.collection.explain().find()
:
Specify the $natural
operator to the hint()
method to prevent MongoDB from using any index:
Instance Index Use Reporting¶
MongoDB provides a number of metrics of index use and operation that you may want to consider when analyzing index use for your database:
- In the output of
serverStatus
: - In the output of
collStats
: - In the output of
dbStats
: