我们的应用程序是索引书籍。当我们索引时,磁盘上的大小约为1GB。当我们搜索时,它需要大约12-18秒。
此应用程序是使用Lucene 3.x.x构建的。如果我迁移到Lucene 7.x.x,我会获得性能提升吗?
我在问,因为应用程序非常庞大,将这一功能分开是一项非常重要的任务,所以需要有经验的人帮助。
我还看到代码中使用的许多类在Lucene-7中不可用。我如何迁移?我是否需要像v3一样进行增量迁移 - > v4 - > v5 - > v6 - > v7?
答案 0 :(得分:0)
我是否会看到性能提升到Lucene 7.0
不能肯定地说,但很可能你会的。已经有相当大的性能提升,因为Lucene的3.您可以浏览其中大部分的Lucene benchmarks,其中,滚动回来,你会看到改善,因为V3。
是否需要足够的改进是另一个问题。您应该首先查看的地方是,如果使用的查询通常效果不佳,以及如何做得更好。如果您使用大量领先的通配符查询,则新版本的Lucene不会神奇地将您从自己身上救出来。
如何迁移?
自Lucene 3以来的7年中,发生了许多变化。使读者或作家发生了变化,甚至“文档和字段”的工作原理也不一样!最好的办法是熟悉《迁移指南》,该指南指出了可能破坏代码的更改以及如何处理它们:
我是否需要进行增量迁移
通过这个很多版本穿过去,我宁愿重新索引如果可能的话,但如果这不是一种选择,是的,你需要在一个时间来升级你的索引一个主要版本。您将需要执行命令行IndexUpgrader工具,并且该工具仅从上一个主要版本进行升级。因此,是的,您将需要下载lucene 4,运行IndexUpgrader以获得4.0索引,然后使用Lucene 5进行重复,等等。