2010-11-23 52 views
2

我只是遇到了一个问题,不知道如何弄清楚。我正在处理计算机内存中对象的索引(它们只存在于我的java代码中)。索引它没有任何问题,但是我不知道如何在执行代码的过程中改变它的索引。我的一个想法是向这个对象添加一些事件(如果你改变了任何参数 - >重新索引它)。但是我不确定它的效率? 预先感谢您 Daniellucene索引内存中的对象

回答

4

在写入磁盘索引时,Lucene已经非常高效。 如果你有内存中的对象,你比平常做的工作要少(从磁盘读取对象是典型的场景),所以重新索引通常不会成为问题。你只需要删除对象并重新索引它(在IndexWriter)。

你没有指定这个,但如果你的指数不需要是持久的,那么你可以做所有在内存中,所以它会快很多,看到RAMDirectoryMemoryIndex