MongoDB: понимание типов индексов и свойств индексов - PullRequest
0 голосов
/ 19 июня 2020

Из документации MongoDB они заявили шесть типов индексов:

  1. Индекс одного поля
  2. Составной индекс
  3. Многоключевой индекс
  4. Геопространственный индекс
  5. Текстовый индекс
  6. Хешированный индекс

В документации также указаны четыре свойства индекса.

  1. Уникальные индексы
  2. Частичные индексы
  3. Разреженные индексы
  4. Индексы TTL

Мои вопросы:

  1. Может ли любой тип индекса иметь свойство индекса?

  2. Может ли тип индекса иметь более одного свойства индекса?

  3. Согласно документации : MongoDB создает уникальный индекс для поля _id во время создания коллекции. Означает ли это, что при поиске по идентификатору MongoDB не выполняет сканирование коллекции, а вместо этого использует индекс идентификатора для эффективного выполнения запроса? Или индекс идентификатора по умолчанию используется только для уникальности? Всегда ли уникальное свойство индекса поддерживает более быстрые запросы?

  4. Я использую MongoDB через mon goose. Когда определяет схему в node.js, подразумевает ли поле unique: true индексацию, что приведет к эффективному поиску, а не сканированию коллекции?

  5. Может материализоваться представления индексируются в MongoDB? Если да, то как?

  6. В документации MongoDB говорится, что MongoDB предоставляет ряд различных типов индексов для поддержки определенных c типов данных и запросов. Gut нет объяснения того, что такое свойства индекса. Как бы вы определяли свойства индекса?

1 Ответ

1 голос
/ 19 июня 2020

Может ли любой тип индекса иметь какое-либо свойство индекса?

Может ли тип индекса иметь более одного свойства индекса?

Вы можете проверить себя и выяснить.

Означает ли это, что при поиске по идентификатору MongoDB не выполняет сканирование коллекции, а вместо этого использует индекс идентификатора для эффективного выполнения запроса?

Да.

Всегда ли уникальное свойство индекса поддерживает более быстрые запросы?

Уникальность означает ограничение данных, которые могут быть помещены в индексируемое поле. И уникальные, и неуникальные индексы позволяют быстро извлекать данные, запрошенные индексированными полями.

Можно ли проиндексировать материализованные представления в MongoDB?

Если вы говорите о https://docs.mongodb.com/manual/core/materialized-views/, «материализованные представления» в MongoDB ортогональны индексам. Вы можете добавить индексы к тому, что эта страница называется «выходной коллекцией» (аргумент $ merge), если вы sh эффективно запрашиваете «материализованное представление».

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

Геопространственный индекс поддерживает гео-запросы. Текстовый индекс поддерживает текстовый поиск. Остальные индексы являются универсальными.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...