если я хочу, чтобы Elasticsearch работал быстрее, мне просто добавить больше узлов в кластер?

Кажется, что Kibana займет более 30 секунд для некоторых моих запросов, а затем автоматически отменит запросы. Немного облом, потому что я надеялся, что одного узла, двойного узла Master/Data будет достаточно. Кажется, это может быть не так, и для повышения скорости запросов я должен добавить дополнительные узлы (я думаю, данные), чтобы ускорить обработку.

При этом естественно ли это для Kibana 7.6? Будет ли он автоматически отменять запросы через 30 секунд или это можно отключить? Я надеялся иметь один узел на данный момент и был в порядке с узлами, требующими времени для обработки, поскольку я действительно запрашиваю только мониторинг пропускной способности в настоящее время.

Похоже, что если я действительно хочу сократить время выполнения запросов, мне, безусловно, следует подумать о добавлении дополнительного узла данных (или 2) для улучшения возможностей запросов, но не обязательно индексации, так как он по-прежнему работает со скоростью 2 млн записей в секунду. 5 минут.


person Fallenreaper    schedule 18.02.2020    source источник


Ответы (1)


ИЗМЕНИТЬ

Вы можете отменить поиск, вызвав API управления задачами< /а>. Kibana отменяет запрос из 7.4, как задокументировано:

Незавершенные поисковые запросы к Elasticsearch теперь будут отменяться, когда запрашивается новый поиск или когда пользователь уходит со страницы или удаляет панель с панели инструментов.

В основном это защита от нескольких запросов одним клиентом kibana, а не отмена тайм-аута. Если вы продолжаете ждать и не выполняете никаких других операций, вы можете в конечном итоге получить результаты поиска/агрегации.

ИСХОДНАЯ ПУБЛИКАЦИЯ

Будет ли он автоматически отменять запросы через 30 секунд или это можно отключить?

Запрос в ES запустится, таймаута нет. Кибана просто не получает ответы, которые возвращаются слишком долго. Чтобы настроить этот тайм-аут, kibana.yaml имеет следующие настройки (по умолчанию):

# Time in milliseconds to wait for responses from the back end or elasticsearch.
# This must be > 0
request_timeout: 300000

Вместо кибаны вы можете написать java-клиент для своих запросов или использовать curl для вызова ES REST API. Обычно это может привести к гораздо более длительному тайм-ауту.

Кажется, что если я действительно хочу улучшить время выполнения запросов, мне определенно следует подумать о добавлении дополнительного узла данных (или 2), чтобы улучшить возможности запросов.

На производительность запросов ES влияет множество факторов, и разумнее сосредоточиться на реальных узких местах. Использование ЦП, использование памяти, пропускная способность диска, пропускная способность сети и т. д. Лучше четко указать, в чем узкое место. Также может помочь добавление узлов, использование SSD вместо SATA или добавление памяти.

person renqHIT    schedule 18.02.2020
comment
кибана отменяет запрос из версии 7.4 –> github.com/elastic/kibana/pull/42035 , вы можете отредактировать ответ, так как OP использует 7.6. Также последние версии elasticsearch могут отменить запрос. - person Nirmal; 18.02.2020
comment
Разработчики Kibana подтвердили на своих форумах, что Kibana отменяет запросы. По умолчанию 30 секунд, если не определено в yaml. При этом я думаю, что важно также уделять больше внимания узким местам. Добавление большего количества машин просто отбрасывает банки в сторону и появится позже. При этом я предполагаю, что мне, скорее всего, следует просто посмотреть на ES, чем на кибану. Если я хочу улучшить ES, я думаю, что мне следует взглянуть на мой журнал и, возможно, обновить типы данных для индексации по дате, времени и другим свойствам. Кроме того, мне любопытно, могу ли я переиндексировать текущий экземпляр на основе реквизита. - person Fallenreaper; 19.02.2020