Я запускаю 8 ядер, 32g RAM elasticsearch узел с 5 осколками, 400 миллионов (маленьких) документов.Elasticsearch OutOfMemoryError Java куча пространства
Все прекрасно работает, пока я не запустить поиск AGG, то осколки начинают неудачу с:
java.lang.OutOfMemoryError: Java heap space
У меня есть changed heap size с: export ES_HEAP_SIZE=16g
(также ES_MAX_MEM
и ES_MIN_MEM
в то же самое)
также изменил yml
файл для поиска по текстам:
и даже (рекомендовано установить документы):
sudo sysctl -w vm.max_map_count=262144
службы перезагрузки и до сих пор нет никакого влияния, до сих пор java.lang.OutOfMemoryError: Java heap space
Любые другие предложения? кроме как не запускать агг-запросы?
запрос:
https://localhost:9200/my_index_name/_search?search_type=count
{
"aggs": {
"distinct_hostname": {
"cardinality": {
"field": "hostname"
}
}
}
}
В какой версии вы работаете? Какой запрос агрегирования вы используете? Возможно ли ограничить количество документов, которые будут помещены в совокупный результат с помощью фильтра? –
Версия: 1.1.1, Build: f1585f0, JVM: 1.7.0_72 –
Запрос агрегации находится в поле, которое существует в каждом документе. Запрос - это попытка подсчета уникальных экземпляров содержимого этого поля. Ограничение того, на что оно выполняется, исказило бы результаты. Я не ожидаю часто выполнять этот запрос и не буду возражать, если он работает медленно. Но когда осколок терпит неудачу, я получаю несогласованные результаты. –