Лишь немногие из наших серверов в кластере Elasticsearch начали показывать очень высокий уровень чтения дискового ввода-вывода.
Одна общая черта c между ними состоит в том, что серверы с самым высоким дисковым вводом-выводом также имеют наименьший «размер кэша запроса» и «объем памяти данных поля». Elasticsearch определил параметры кэширования по умолчанию на всех узлах, однако серверы с высоким дисковым вводом-выводом, по-видимому, используют меньше кэша: всего 250 МБ кэша запросов по сравнению с 1,9 ГБ на серверах с низким дисковым вводом-выводом.
Немного статистики:
- 10 серверов в кластере
- 5 сегментов с 1 репликой
- индексы имеют по 15-20 ГБ каждый (включая реплики)
- некоторые запросы сканируют 12-20 индексов, они, как правило, медленнее всего работают согласно нашим медленным журналам
- документы имеют настраиваемую маршрутизацию по идентификаторам клиентов
- Все серверы имеют 54 ГБ ОЗУ
Что может быть причиной этой проблемы и как ее избежать?