У меня есть 2 кластера ElasticSearch:
- старый 3 узла (мастер + данные)
- ElasticSearch: 5.1.2
- Java: OpenJDK версия "1.8.0_111"
- -Xms12g -Xmx12g
- новые 6 узлов (3 основных + 3 данных) с гораздо лучшеаппаратное обеспечение (процессор / оперативная память / жесткий диск)
- ElasticSearch: 6,4
- Java: openjdk версия "1.8.0_181"
- -Xms32766m -Xmx32766m
В обоих кластерах у меня есть небольшой индекс (около 12M документов) с одинаковыми свойствами и информацией в обоих кластерах.И есть поисковый запрос, который использует scripted_metric агрегацию с безболезненными скриптами (init / map / Объединить / уменьшить).И моя проблема в том, что в старом кластере этот поисковый запрос работает намного быстрее, чем в новом одном.
Я профилировал запрос на обоих кластерах и видел, что большую часть времени запрашивалпотрачено на сбор фазы script_metric агрегации, что, как я полагаю, означает, что скрипт карты выполняется дольше.Но я не могу понять, в чем причина медленного выполнения одного и того же запроса к тому же набору данных.Может быть, для Elastic 6.4 нужно установить некоторые свойства, чтобы включить некоторое повышение производительности, которое было по умолчанию раньше?