2016-07-13 6 views
3

Есть ли способ установить метод сжатия по умолчанию для best_compression с новыми созданными индексами в Elasticsearch?Сжатие индексов Elasticsearch

Очевидно, это можно сделать вручную после создания индекса.

На основе поиска в Интернете это должно быть осуществимо либо путем установки его в файле elasticsearch.yml, либо путем создания настраиваемого шаблона для его установки. Тем не менее, я не смог понять это правильно в elasticsearch.yml. Я пробовал всевозможные варианты, но в основном это должно сделать это:

index.codec: best_compression 

Но это не так.

Мне также не удобно создавать пользовательский шаблон, так как моя цель - получить это сжатие ко всем индексам, а не только к тем, которые создаются с использованием определенного шаблона. Но если это единственный способ, пусть будет так.

Мой вариант использования Elasticsearch с Logstash, поэтому Logstash является создателем этих индексов. Без настраиваемых шаблонов установка метода сжатия в конфигурациях Logstash кажется совершенно невозможной. Я запускаю Elasticsearch версии 2.2.0.

В настоящее время я могу установить сжатие вручную просто отлично после закрытия индекса и выполнения:

curl -XPUT 'http://localhost:9200/example_index/_settings' -d '{"index":{"codec":"best_compression"}}' 

И при повторном открытии индекса.

Из официальной документации:

index.codec 

Значение по умолчанию компрессы хранится данные со сжатием LZ4, но это может быть установлен в best_compression, который использует ВЫКАЧИВАЮТ для более высокого степени сжатия, за счет медленнее производительность сохраненных полей.

Источник: https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules.html

ответ

3

Установка index.codec является настройка уровня узла, и он не будет отображаться в списке параметров для нового индекса. Если шаблон индекса равен , то конкретно, устанавливая codec, тогда он будет использоваться, в противном случае будет один на уровне узла.

Кроме того, при изменении кодека для индекса только новые сегменты (после новой индексации, изменения в существующих документах или слияния сегментов) будут использовать новый кодек.

+0

Да, я знал, что изменение кодека не имеет обратной силы, но мне даже не пришло в голову, что измененный кодек не будет отображаться в настройках индекса, если он выполняется на уровне узла. Но да, это показывает в настройках, видимых узлов: 'локон -XGET«HTTP: // локальный: 9200/_nodes хорошенькие = true'' Так что спасибо за совет?. :) – empe

Смежные вопросы