Індекси

Коли ми даємо команду знайти щось для нас, MongoDB змушений перебирати кожен документ в колекції, щоб порівняти вказане поле (або поля) і вирішити чи повертати цей документ. Для великих об'ємів даних така операція може тривати надто довго.

Щоб спростити роботу MongoDB можна створити індекси для полів, по який роблять вибірку

db.<назва_колекції>.createIndex({name: 1}) // А-Я

Після чого запити і сортування по цьому полю будуть швидші

Видалити індекс просто:

db.<назва_колекції>.dropIndex({name: 1})

Список допустимих індексів

db.<назва_колекції>.getIndexes({name: 1})

За замовчуванням MongoDB створює індекс для системного поля _id, сортований по зростанню (А-Я).

Складні індекси

Якщо в запиті бере участь більше, ніж 1 поле, ви можете створити комбінований індекс. Нехай наш запит містить і поле name, і поле age, тоді є сенс створити комбінований індекс, який включає їх обох:

db.<назва_колекції>.createIndex({name: 1, age: -1})

Last updated