2/28/2018 MongoDB Indexing
MongoDB - Indexing
Advertisements
Previous Page Next Page
Indexes support the efficient resolution of queries. Without indexes, MongoDB must scan
every document of a collection to select those documents that match the query statement.
This scan is highly inefficient and require MongoDB to process a large volume of data.
Indexes are special data structures, that store a small portion of the data set in an easy-
to-traverse form. The index stores the value of a specific field or set of fields, ordered by
the value of the field as specified in the index.
The ensureIndex() Method
To create an index you need to use ensureIndex() method of MongoDB.
Syntax
The basic syntax of ensureIndex() method is as follows().
>db.COLLECTION_NAME.ensureIndex({KEY:1})
Here key is the name of the field on which you want to create index and 1 is for ascending
order. To create index in descending order you need to use -1.
Example
>db.mycol.ensureIndex({"title":1})
>
In ensureIndex() method you can pass multiple fields, to create index on multiple fields.
>db.mycol.ensureIndex({"title":1,"description":-1})
>
ensureIndex() method also accepts list of options (which are optional). Following is the
list −
Parameter Type Description
background Boolean Builds the index in the background so that building an index
https://www.tutorialspoint.com/mongodb/mongodb_indexing.htm 1/3
2/28/2018 MongoDB Indexing
does not block other database activities. Specify true to build
in the background. The default value is false.
Creates a unique index so that the collection will not accept
insertion of documents where the index key or keys match an
unique Boolean
existing value in the index. Specify true to create a unique
index. The default value is false.
The name of the index. If unspecified, MongoDB generates an
name string index name by concatenating the names of the indexed fields
and the sort order.
Creates a unique index on a field that may have duplicates.
MongoDB indexes only the first occurrence of a key and
dropDups Boolean removes all documents from the collection that contain
subsequent occurrences of that key. Specify true to create
unique index. The default value is false.
If true, the index only references documents with the
specified field. These indexes use less space but behave
sparse Boolean
differently in some situations (particularly sorts). The default
value is false.
Specifies a value, in seconds, as a TTL to control how long
expireAfterSeconds integer
MongoDB retains documents in this collection.
index The index version number. The default index version depends
v
version on the version of MongoDB running when creating the index.
The weight is a number ranging from 1 to 99,999 and
weights document denotes the significance of the field relative to the other
indexed fields in terms of the score.
For a text index, the language that determines the list of stop
default_language string words and the rules for the stemmer and tokenizer. The
default value is english.
For a text index, specify the name of the field in the
language_override string document that contains, the language to override the default
language. The default value is language.
Previous Page Next Page
Advertisements
Tutorials Point (India) Pvt. Ltd.
YouTube 52K
https://www.tutorialspoint.com/mongodb/mongodb_indexing.htm 2/3
2/28/2018 MongoDB Indexing
Write for us FAQ's Helping Contact
© Copyright 2018. All Rights Reserved.
Enter email for newsletter go
https://www.tutorialspoint.com/mongodb/mongodb_indexing.htm 3/3