У меня такой сценарий, когда система каждый день создает индекс внутри узла. Каждый индекс имеет 1 первичный осколок.ElasticSearch - Настройка чтения только индекса повышает производительность?
Итак, все документы, индексированные за один день, идут к определенному индексу, и после того, как день прошел, создается новый индекс.
Я сохраняю индексы последних 60 дней (это значит, что у меня всегда есть 60 осколков в узле). Я не могу закрыть старые индексы, потому что хочу, чтобы они поддерживали поиск. После 60-го дня я удаляю их.
Как я читал следующее article я заметил это об индексе буфера:
Это по умолчанию до 10%, а это означает, что 10% от общего объема памяти, выделенной на узел будет использоваться в качестве буфера индексации размер. Эта сумма затем делится между всеми различными осколками
Это означает, что для индекса дня у меня есть 10%/60 индексной памяти буфера. Поэтому я не использую 10%.
Вопрос заключается в том, что произойдет, если я set to read only the older indices:
index.blocks.read_only значение ИСТИНА, чтобы индекс и индекс метаданных только для чтения, ложь, чтобы позволить операции записи и изменения метаданных.
Я увижу выгоду для этого? Как и весь 10% индексного буфера в моем единственном записываемом индексе? Или улучшить поиск других индексов, поскольку они могут быть объединены только в сегменте, поскольку они больше не получают записи?
Спасибо!
Пабло
PD: Im используя ElasticSearch 1.7.3, но Im с нетерпением жду перейти на 2.2 в будущем. Я хотел бы знать, если это возможно, если у меня есть преимущество, если это будет переведено на 2.2