eG Monitoring
 

Measures reported by MongoIndexTest

Indexes support the efficient execution of queries in MongoDB. If an appropriate index exists for a query, MongoDB can use the index to limit the number of documents it must inspect. Without indexes, MongoDB must perform a collection scan, i.e. scan every document in a collection, to select those documents that match the query statement. Collection scans are time-consuming, resource-intensive operations, which if not contained, can degrade performance of the database server and the dependent applications. To avoid these scans, each query to the Mongo server should be indexed. This is where the MongoIndexTest test helps.

This test monitors the queries to a target Mongo database server and reports the count and percentage of queries that are not serviced by indexes - i.e., the count and ratio of queries that are serviced by collection scans. This way, the test brings index-related inadequacies to the surface, and prompts administrators to improve query and over-all database performance by taking the necessary corrective action.

Outputs of the test : One set of results for the target Mongo database server being monitored.

The measures made by this test are as follows:

Measurement Description Measurement Unit Interpretation
Access_rate Indicates the rate at which queries/operations accessed the indexes. Accesses/sec This is a good indicator of the workload of the database server.
Hit_rate Indicates the rate at which queries ran using indexes in memory. Hits/Sec A high value is desired for this measure.
Misses_rate Indicates the rate at which queries attempted to access an index that was not in memory. Misses/Sec A low value is desired for this measure.
Reset_rate Indicates the rate at which the index counter was reset. Resets/Sec  
Miss_ratio Indicates the percentage of time queries attempted to access indexes that are not in memory. Percent If the value of this measure is over 50%, then you need to look at your queries to see if they are making optimal use of the indexes you have created. You should consider adding new indexes and seeing if your queries run faster as a result.