лучший способ обновить RAMDirectory - PullRequest
0 голосов
/ 18 марта 2012

Через непоследовательные интервалы необходимо обновлять определенные документы в индексе Lucene. Обновления могут быть ежечасными или каждые несколько минут. В настоящее время у меня есть процесс, который запускается и ищет изменения, и если изменения произошли, он (в стиле Lucene 3.5) удаляет документ, а затем повторно добавляет его в RAMDirectory.

  1. Есть ли лучший способ управлять индексом Lucene документов, которые постоянно преобразуются? RAMDirectory - лучший выбор?

Код, который я использую для «обновления» индекса:

Term idTerm = new Term("uid",row.getKey());
getWriter().deleteDocuments(idTerm);
getWriter().commit();
// do some fun stuff creating a new doc with the changes
getWriter().addDocument(doc);

1 Ответ

1 голос
/ 19 марта 2012

Недавно в Lucene было два очень полезных вспомогательных класса для обработки часто меняющихся индексов:

Подробнее о них можно прочитать в блоге Майка МакКэндлесса .

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