Я использую кластер с осколками, каждый из которых представляет собой набор реплик. Шардинг с хешированным индексом. Каждый запрос поиска приводит к миллионам документов, загруженных с каждого сегмента.
У меня есть настройка для прямого подключения к каждому узлу, чтобы получить максимально возможную скорость. Но поскольку это официально не поддерживается, я попытался использовать монго. Запросы становятся медленнее с монго. Мне интересно, как ускорить процесс.
- Mongos требует много оперативной памяти для своей работы.
- Похоже, что mongos выполняет какое-то кэширование или что-то еще, прежде чем вернуть результат.
То, что я ожидал бы: монго соединяется с каждым осколком и просто возвращает результаты, полученные от отдельных узлов. Может быть круговой Не нужно никакой сортировки. Просто сбор со всех осколков.
Кажется, эта работа слишком проста для монго. ; -)
Несколько советов, как использовать монго в этом сценарии, или нет способа оптимизировать его логику?