在不一致的间隔内,需要更新Lucene索引中的特定文档。更新可以是每小时或每隔几分钟。目前,我有一个运行并查找更改的进程,如果发生了更改,它(以Lucene3.5的方式)删除文档,然后将其重新添加到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);发布于 2012-03-19 10:24:17
Lucene最近有两个非常有用的助手类来处理频繁变化的索引:
你可以在迈克McCandless的博客上读到更多关于它们的信息。
https://stackoverflow.com/questions/9759130
复制相似问题