加快Lucene指数建设进程

时间:2014-03-23 19:01:43

标签: java mysql hibernate lucene

我正在使用this class在Lucene中为旧的Web应用程序构建一些索引(类别和条目)(Lucene 2.0,Java 6)。

构建索引需要很长时间:在Intel i3上10分钟,包含60000个条目的50 MB索引和包含10000个类别的20 MB索引。

我想加快这个过程,所以每次添加/编辑条目以便将其编入索引时,我都不必等待永恒。

使用Hibernate和JDBC驱动程序从MySQL数据库读取条目/类别,尽管SQL表被正确编入索引,但起初我认为这是瓶颈所在的位置(我总共执行20000个MySQL查询* *)。但是每个查询平均花费不到1毫秒,所以我猜不是这样。

在我建立并运行一个可能只告诉我我已经知道的分析器之前,我想知道是否有人对如何提高索引构建性能有任何直接的建议......也许是更近期的版本Lucene或Java 7会有帮助吗?或者是我正在使用的Analyzer

** (每个类别2个:第一个查找某个类别的子类别,第二个查找某个类别的条目)

1 个答案:

答案 0 :(得分:0)

为了让问题结束(感谢@Joshua的评论):

我设置了探查器。我没错。解决方案:安排parallel incremental updates +定期重建整个索引(在这个特定情况下,每2-3天就足够一次)。