Docs HomeMongoDB Manual

Indexing Reference

Indexing Methods in mongosh

NameDescription
db.collection.createIndex()Builds an index on a collection.
db.collection.dropIndex()Removes a specified index on a collection.
db.collection.dropIndexes()Removes all indexes on a collection.
db.collection.getIndexes()Returns an array of documents that describe the existing indexes on a collection.
db.collection.reIndex()Rebuilds all existing indexes on a collection.
db.collection.totalIndexSize()Reports the total size used by the indexes on a collection. Provides a wrapper around the totalIndexSize field of the collStats output.
cursor.explain()Reports on the query execution plan for a cursor.
cursor.hint()Forces MongoDB to use a specific index for a query.
cursor.max()Specifies an exclusive upper index bound for a cursor. For use with cursor.hint()
cursor.min()Specifies an inclusive lower index bound for a cursor. For use with cursor.hint()

Indexing Database Commands

NameDescription
createIndexesBuilds one or more indexes for a collection.
dropIndexesRemoves indexes from a collection.
compactDefragments a collection and rebuilds the indexes.
reIndexRebuilds all indexes on a collection.
validateInternal command that scans for a collection's data and indexes for correctness.
geoSearchRemoved in MongoDB 5.0. Performs a geospatial query that uses MongoDB's haystack index functionality.
checkShardingIndexInternal command that validates index on shard key.
setIndexCommitQuorumChanges the minimum number of data-bearing members (i.e commit quorum), including the primary, that must vote to commit an in-progress index build before the primary marks those indexes as ready.

Geospatial Query Selectors

NameDescription
$geoWithinSelects geometries within a bounding GeoJSON geometry. The 2dsphere and 2d indexes support $geoWithin.
$geoIntersectsSelects geometries that intersect with a GeoJSON geometry. The 2dsphere index supports $geoIntersects.
$nearReturns geospatial objects in proximity to a point. Requires a geospatial index. The 2dsphere and 2d indexes support $near.
$nearSphereReturns geospatial objects in proximity to a point on a sphere. Requires a geospatial index. The 2dsphere and 2d indexes support $nearSphere.