Задать вопрос
@TheInsable

Почему низкая скорость mongodb при поиске?

Имеется коллекция, в ней чуть больше 21 миллиона документов, у некоторых документов есть поле field: true, в остальных этого поля нет вовсе.

db.collection.find({"field": {$ne: true}}).count()

Занимает всегда от 14 секунд, таких документов 18.5КК. Индекс по этому полю создан, всего у документов в этой коллекции по 4 поля, индексы для каждого.

Как-нибудь можно увеличить скорость?
  • Вопрос задан
  • 430 просмотров
Подписаться 2 Оценить 1 комментарий
Решения вопроса 1
@lega
индексы на true/false не эффективны ни в каких базах, проще их перенести в отдельную коллекцию.
вполне возможно поиск идет не по индексу (а полный перебор), для индекса надо заполнить поле и искать по false.
Еще можете попробовать $exists: false
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы