Как стереть индекс реального времени в Sphinx?
Я хочу использовать индекс реального времени в качестве мгновенно доступной дельты для сегодняшних изменений, поэтому его нужно стирать каждую ночь. Есть ли хороший способ удалить все документы из RT-индекса? Полагаю, я мог бы выбрать все из него и выпустить DELETE
для каждого найденного id, но это не кажется мудрым способом.
3 ответов
кажется, это еще невозможно. http://sphinxsearch.com/forum/view.html?id=6898 занимается этим вопросом, и единственное решение, которое упоминает форум, - это закрытие Sphinx, очистка binlog и соответствующих файлов индекса и перезапуск.
Я пробовал TRUNCATE RTINDEX ...
без каких-либо удачи. Самый простой метод, который я нашел, - изменить path
настройки индекса. например:
index myindex
{
type = rt
path = /var/lib/sphinxsearch/data/myindex
...
к
index myindex
{
type = rt
path = /var/lib/sphinxsearch/data/myindex-v2
...