Lucene.Net IndexWriter多个应用程序

时间:2013-12-18 08:12:24

标签: c# lucene.net lucene

我目前正在开发一个项目,在将其插入Lucene.Net之前为很多文档编制索引(进程缓慢)。

为了使索引更快,我想复制Windows服务,只保留一个线程进入我的服务。这意味着我将拥有多个IndexWriter,由于锁定,这是不可能的。服务也不会在同一台服务器上,这意味着共享内存是不可能的。

有没有办法安全地做到这一点?如果是的话怎么做?

提前感谢您的回答。

莱尼

1 个答案:

答案 0 :(得分:1)

每个作家都应该写到他们自己的目录,你可以使用IndexWriter.AddIndexesNoOptimize

将它们合并为最后一步
  

将索引数组中的所有段合并到此索引中。

     

这可用于并行化批量索引。大型文档集可以分解为子集合。每个子集合可以在不同的线程,进程或机器上并行编制索引。然后可以通过使用此方法合并子集合索引来创建完整索引。