Исключение массовой вставки эластичного поиска при загрузке
Я получаю исключение при попытке выполнить массовую вставку в asticsearch v6.6.0
,
Это было хорошо раньше.
Вот сообщение об исключении:
Elasticsearch bulk insert exception, TransportError(503, 'circuit_breaking_exception', '[parent] Data too large, data for [<http_request>] would be [746384154/711.8mb], which is larger than the limit of [745517875/710.9mb], usages [request=0/0b, fielddata=626151547/597.1mb, in_flight_requests=889937/869kb, accounting=119342670/113.8mb]')
Как мне настроить ограничение данных? так как исключение заявляет data too large, than the limit
?
1 ответ
Автоматический выключатель - это механизм предотвращения исключения OutOfMemory. Он устанавливает до 70% процентов вашей кучи. https://www.elastic.co/guide/en/elasticsearch/reference/current/circuit-breaker.html
Я не рекомендую увеличивать предел автоматического выключателя, потому что вы получите исключение OOM. Очевидно, что полевые данные вызвали переполнение вашей кучи (памяти). какое-то решение:
- увеличить размер кучи.
- используйте значение документа вместо данных поля.
- очистить кэш данных поля (например, каждый час).
в некоторых версиях упругих (я думаю, 6.3) была ошибка об автоматическом выключателе, и после обновления проблема была решена.