Я сталкиваюсь с высокими ожиданиями ввода-вывода в моем кластере эластичного поиска по всем узлам при индексации документов. Из какого-то поста онлайн я узнал о горячих темах вasticsearch. Я собрал вывод API горячих потоков. смотрите вывод ниже:
55.0% (275.1ms out of 500ms) cpu usage by thread 'elasticsearch[01][refresh][T#1]'
7/10 snapshots sharing following 24 elements
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Object.java:502) org.apache.lucene.index.DocumentsWriterFlushControl.waitForFlush(DocumentsWriterFlushControl.java:272)
53.6% (267.8ms out of 500ms) cpu usage by thread 'elasticsearch[01][bulk][T#1]'
3/10 snapshots sharing following 37 elements
sun.nio.ch.FileDispatcherImpl.force0(Native Method)
sun.nio.ch.FileDispatcherImpl.force(FileDispatcherImpl.java:76)
sun.nio.ch.FileChannelImpl.force(FileChannelImpl.java:388)
org.elasticsearch.index.translog.TranslogWriter.syncUpTo(TranslogWriter.java:272)
org.elasticsearch.index.translog.Translog.ensureSynced(Translog.java:521)
За исключением refresh_interval (30 с), все остальные настройки по умолчанию. Исходя из приведенного выше вывода горячих потоков, может кто-нибудь объяснить, что заставляет мои узлы ES ждать так долго. Я понимаю, что первый поток говорит, что он ожидает сброса, а второй - транслога. Какую настройку конфигурации мне следует попробовать? Примечание. Я использую операцию UPDATE для индексации своих документов, и обновления документов происходят часто.