Индексы Elasticsearch занимают слишком много места

Я использую Elasticsearch 7.5.2 в Ubuntu. Недавно я начал использовать Elasticsearch для отображения релевантных результатов поиска при каждой загрузке страницы. Это увеличило объем, но я также обнаружил, что он создал большие индексные файлы. Обратите внимание, что я использую "поиск приложений" для обработки запросов.

Вот примеры файлов индекса, которые занимают слишком много места:

.app-search-analytics-logs-loco_togo_production-7.1.0-2020.01.26 => 52 GB
.app-search-analytics-logs-loco_togo_production-7.1.0-2020.01.27 => 53 GB

Я попытался удалить их с помощью CURL, но они появляются снова и занимают меньше места (~5 ГБ каждый).

Я хочу знать, есть ли способ контролировать эти индексы. Я не уверен, какую цель решают эти индексы и есть ли способ предотвратить их?

1 ответ

Я попытался удалить их с помощью CURL, но они появляются снова и занимают меньше места (~5 ГБ каждый).

Очевидно, ваше действие удаления было выполнено. Похоже, что индексы еще записываются. Если документы все еще попадают в elasticsearch, индекс создается повторно.

Так например:

В индексе от 27.01.2020 до удаления 53 ГБ. После его удаления данные исчезнут, как и сам индекс. Но как только новые документы того же дня (2020.01.27) будут проиндексированы, индекс будет воссоздан заново, содержащий документы после удаления, которые, вероятно, составляют 5 ГБ.

Если это не то, что вы хотите, вам нужно проверить, есть ли какие-то источники, все еще отправляющие данные.

Надеюсь это поможет.

РЕДАКТИРОВАТЬ:

В: Однако есть ли способ управлять этими показателями? Я не хочу, чтобы они занимали слишком много места.

Да! Index Lifecycle Management (ILM) - это то, что вам нужно. Он нацелен на автоматизацию обслуживания / управления индексами. Так, например, вы можете определить перенос на новый индекс каждые 30 ГБ, чтобы они оставались небольшими. Другой пример - удаление индекса через X дней. Взгляните на все этапы и действия.

Другие вопросы по тегам