Со вчерашнего дня у меня возникли огромные проблемы с моей MongoDB. У меня есть коллекция в 100 ГБ с более чем 50 миллионами документов. Найти их и .count () до вчерашнего дня не было проблемой.
Почему-то со вчерашнего дня простой запрос на поиск и подсчет занимает более 4 часов (раньше это занимало около 10 секунд). Индекс вроде бы создан, и на моем сервере кажется, что заполнена только оперативная память (используется 85 ГБ из 96).
Моя первая мысль заключается в том, что он пытается поместить 100 ГБ в мою оперативную память, и, поскольку он не может, он не использует индекс ... Может ли это быть?
Кто-нибудь знает, что могло случиться?
Большое спасибо.
РЕДАКТИРОВАТЬ:
Версия Mongo: v4.0.3
Версия Ubuntu: 4.15.0-36-generic
Объясните (я должен был поставить предел, иначе он бесконечен ...)
db.getCollection ('users'). find ({"sessions.webInstanceId": 123456873, "sessions.timeStart": {$ gt: 1500940800}}). limit (10000) .explain (true)
Вывод объяснения: https://pastebin.com/TqMUyKag
РЕДАКТИРОВАТЬ 2: При дополнительных исследованиях я также заметил, что у меня проблемы с IO Wait.
Может ли это быть причиной медленных запросов? Мои диски находятся в EXT4, что, на мой взгляд, не лучшая практика.