2014-09-08 2 views
0

Могу ли я установить максимальный номер документа в индексе elasticsearch? Чтобы достигнуть этого предела, старые документы начинают удаляться.Как установить максимальный документ в elasticsearch?

По-моему, это не предусмотрено. Это правда? Если да, как очистить базу данных только из старых записей, через какое-то время?

ответ

0

Не знаю об отдельных документах, но Elasticsearch curator (скрипт python) может (только) удалить индексы.

Examples

pip install elasticsearch-curator 
curator delete --older-than 30  ## for localhost:9200 
curator --host es-host delete --older-than 30 --prefix prod- --timestring %Y.%m.%d ## for remote server es-host where index name has prefix prod 

Пожалуйста, прочитайте их README для деталей, если это соответствует вашим требованиям.

1

Внутри Elasticsearch нет механизма, позволяющего вам ограничить размер индекса. Тем не менее, если вы хотите, документы должны быть удалены после определенного количества времени, я бы использовать установку ТТЛ:

TTL

Документ может быть проиндексированы с ТТЛ (время жить), связанных с это. Истекшие документы будут автоматически удалены. Истечение срока действия дата, которая будет установлена ​​для документа с предоставленным ttl, относится к отметке времени документа относительно , что означает, что она может быть основана на времени индексации или в любое время. При условии, ТТЛ должны быть строго положительным и может быть числом (в миллисекундах) или любое допустимое значение времени

http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/docs-index_.html

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