Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про MongoDB: index types, text index, geospatial index, ttl index, compound index

Какие типы индексов существуют в MongoDB?

Этот вопрос проверяет знание различных типов индексов, поддерживаемых MongoDB, и их применения.

Короткий ответ

В MongoDB существуют следующие типы индексов:

  • Индекс на одно поле (Single-field)

  • Составной индекс (Compound index)

  • Текстовый индекс (Text index)

  • Геопространственный индекс (Geospatial index)

  • Хешированный индекс (Hashed index)

  • Шаблонный индекс (Wildcard index)

  • Индекс с временем жизни (TTL index)

Длинный ответ

Типы индексов

  • Индекс на одно поле (Single-field): Это самый простой тип индекса, создающий индекс по одному полю. Он полезен, когда необходимо быстро искать по одному полю.

    db.collection.createIndex({ field: 1 }) // Индекс по полю
  • Составной индекс (Compound index): Индекс, который создается на нескольких полях сразу. Это полезно, когда запросы часто используют несколько полей.

    db.collection.createIndex({ field1: 1, field2: -1 }) // Индекс на несколько полей
  • Текстовый индекс (Text index): Используется для полнотекстового поиска, позволяя искать по словам в строках.

    db.collection.createIndex({ field: "text" }) // Индекс для текстового поиска
  • Геопространственный индекс (Geospatial index): Индекс для хранения и поиска географических данных (например, координат).

    db.collection.createIndex({ location: "2dsphere" }) // Геопространственный индекс
  • Хешированный индекс (Hashed index): Индекс, который хеширует значения поля. Часто используется для шардирования.

    db.collection.createIndex({ field: "hashed" }) // Хешированный индекс
  • Шаблонный индекс (Wildcard index): Индекс, который автоматически индексирует все поля с динамическими ключами, включая вложенные объекты и массивы.

    db.collection.createIndex({ "$**": 1 }) // Шаблонный индекс
  • Индекс с временем жизни (TTL index): Индекс, который автоматически удаляет документы после заданного времени.

    db.collection.createIndex({ createdAt: 1 }, { expireAfterSeconds: 3600 }) // TTL индекс

Разные типы индексов применяются в зависимости от задач и типа данных, например, для ускорения текстовых запросов или работы с географическими данными.

  • Аватар

    Golang Guru

    Maxim Lukyanov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    2

  • Сложность:

    4

Навыки

  • MongoDB

    MongoDB

Ключевые слова

#index types

#text index

#geospatial index

#ttl index

#compound index

Подпишись на Python Developer в телеграм

  • Аватар

    Golang Guru

    Maxim Lukyanov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.