Как повысить скорость поиска по запросу в Elastic Search?
Хост - AWS от ElasticSearch, у меня 2 ТБ данных хранятся на 6 узлах и в 30 индексах по 10 шардов в каждом. Простой поиск по всем индексам очень медленный и занимает несколько минут.
Где я сделал ошибку? Это нормально, или у меня неправильные настройки, или, может быть, у меня хранится слишком много данных?
Мои настройки кластера:
"search": {
"max_queue_size": "1000",
"queue_size": "1000",
"size": "4",
"auto_queue_frame_size": "2000",
"target_response_time": "1s",
"min_queue_size": "1000"
},
Настройки моих узлов:
"os": {
"refresh_interval_in_millis": 1000,
"name": "Linux",
"pretty_name": "CentOS Linux 7 (Core)",
"arch": "amd64",
"version": "4.15.0-1039-aws",
"available_processors": 32,
"allocated_processors": 2
}
Спасибо!
Ответы
Это очень широкий вопрос с очень меньшим количеством информации, не могли бы вы предоставить дополнительную информацию, например:
- Сколько у вас данных и размер каждого шарда.
- Примеры поисковых запросов с указанием их среднего времени.
- размер кучи узлов данных и почему у вас
allocated_processors
намного меньше (2), чем доступных процессоров (32) - Сколько документов вы получаете в поисковом запросе, т.е. параметр размера.
- Задержка поиска относительно отсутствия поисковых вызовов
- Поиск медленных журналов elasticsearch (ES)
Вы можете обратиться к моим 10 советам по повышению производительности поиска , а также рассказать мне значения некоторых параметров, упомянутых в советах, а также попробовать инструмент оптимизатора кластера для точной настройки параметров кластера и узлов ES.
Как обсуждалось в комментарии, пожалуйста, обратитесь к блогу opster search slow-log для более эффективного устранения проблемы.
1)I have 2TB data. Every index has 50GB or more. Each has 10 shards and a replica
Это уж слишком. Целевой размер осколка должен составлять около 50 ГБ. С вашими настройками у вас будет больше около 5 ГБ каждый. Вы можете сжать до 5 осколков или меньше и принудительно слить до 1 сегмента. Спектакли надо сильно улучшать.
После этого ознакомьтесь с другими полезными советами, которые дает Optsters в его блоге. Все они актуальны.