2013-08-26 2 views
0

Я использую Apache Solr 4.3.1 в качестве хранилища для хранения и индексирования данных. Теперь одно из полей связано с данными размещения данных. Я хочу обновить репозиторий, удалив те записи, которые старше 30 дней, и сохраняя только релевантные данные на временной основе.Как периодически удалять данные из Apache Solr?

У меня есть веб-приложение на основе Solrj, которое взаимодействует с сервером Solr для получения результатов поиска. Должен ли я добавить запланированный поток для удаления данных с сервера Solr через 30 дней или Solr предоставляет функции автоматического удаления данных по истечении определенного периода времени?

ответ

2

Solr не делает это автоматически.

Вы можете добавить временную метку поля, которая по умолчанию имеет значение СЕЙЧАС, когда вы вставляете записи.

<field name="timestamp" type="date" indexed="true" stored="true" default="NOW" /> 

И у вас может быть задание, которое периодически выполняется для очистки данных.
30 дней можно легко добавить к запросу на удаление fq=timestamp:[* to NOW/DAY-30DAYS] (Проверить точный синтаксис)

+0

благодарит Jayendra за вашу мгновенную помощь! – abhijeet

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