从lucene 3.x迁移到4.x时,重新索引是否值得

时间:2014-04-01 12:36:47

标签: lucene indexing migration

我要将Lucene版本从3.5迁移到4.7。 由于我的索引非常庞大,我想知道是否值得重新编制索引。 大多数情况下,如果在性能方面值得,我感兴趣。 有什么建议吗?

此致

2 个答案:

答案 0 :(得分:2)

像往常一样,对此没有简单的答案。

最大的变化是,在v4.0中,Lucene引入了提供自定义编解码器/发布格式的能力。 Michael McCandless(Lucene的一位作者),explains the difference between 3.X and 4.0

  

默认情况下,Lucene使用StandardCodec,它可以写入和读入   与当前稳定分支(3.x)几乎相同的格式。细节   给定的术语存储在术语词典文件中,而文档和   该术语发生的位置存储在单独的文件中。

也就是说,有不同的编解码器,每个编解码器都集中在不同的东西上。

This presentation涵盖了一些发布格式,并有一些见解,针对哪种情况调整格式。如果你打算留在StandardCodec,我猜你不会选择重新索引。

答案 1 :(得分:1)

考虑使用4.7的IndexUpgrader来升级您的索引,因为索引格式(准确的过帐格式)从3.x到4.x有一些变化。 Lucene 4.7的默认编解码器可能无法读取Lucene 3.x的索引文件

IndexUpgrader是Lucene提供的实用程序。 http://lucene.apache.org/core/4_7_0/core/org/apache/lucene/index/IndexUpgrader.html

相关问题