Как настроить сохранение транслога для небольших индексов? - PullRequest
2 голосов
/ 13 мая 2019

В настоящее время мы работаем над решением для электронной коммерции, мы используем Elasticsearch 6.x для включения полнотекстового поиска по продуктам.

У нас есть 88 индексов, каждый из которых имеет размер primary.store.size около 50 МБ.У нас есть одна реплика для каждого основного.Мы часто восстанавливаем эти индексы путем массовой индексации с фиксированным _id.Из-за этого транслог растет.

Каждый из моих индексов очень похож на эти данные, представленные через _cat / indices:

    index      pri rep docs.count  docs.deleted store.size  pri.store.size
    myindex_1   1   1     105533            0     79.4mb         39.7mb

Для того же индекса вот _cat / recovery data:

index    shard  time  type        stage snapshot files files_recovered files_percent files_total bytes   bytes_recovered bytes_percent bytes_total translog_ops translog_ops_recovered translog_ops_percent
myindex_1 0     14ms  empty_store done  n/a      0     0               0.0%          0           0       0               0.0%          0           0            0                      100.0%
myindex_1 0     22ms  peer        done  n/a      1     1               100.0%        1           233     233             100.0%        233         0            0                      100.0%

Для того же индекса вот данные _cat / shards:

index      shard prirep state     docs  store 
myindex_1  0     p      STARTED 105533 39.7mb 
myindex_1  0     r      STARTED 105533 39.7mb 

В конфигурации по умолчанию размер хранения транслога составляет 512 МБ, а срок хранения - 12 ч.Согласно документации, translog теперь хранится в течение более длительного времени, чтобы обеспечить более быстрый механизм восстановления осколков.

Учитывая размер наших индексов, который довольно мал по сравнению с размером транслога, можно ли безопасно настроить срок хранения транслогаили размер удержания?Или я бы лучше увеличил объем памяти, чтобы учесть стандартные свойства журнала?

1 Ответ

5 голосов
/ 22 мая 2019

Параметры хранения определяют, сколько файлов транслога и как долго следует хранить, чтобы обновить автономные реплики во время восстановления. Чем больше информации вы храните в файлах транслога, тем больше шансов на восстановление, но большие файлы требует больше ресурсов сервера и их обработка займет больше времени. Таким образом, вы должны поддерживать хороший баланс здесь. Установка по умолчанию в 512 МБ для размера хранения недостаточна, если вы испытываете высокую пропускную способность, поэтому вы можете безопасно увеличить ее, скажем, до 1024 МБ. Срок хранения также может быть изменен и, возможно, приведет к увеличению вашего дискового хранилища, поэтому после обновления обеих настроек следите за доступным дисковым пространством и, в зависимости от потребностей, планируйте необходимое обновление дискового хранилища.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...