日期:2014-05-17  浏览次数:20802 次

Apache Lucene 3.5 发布的优化、改进和Bug修复
Apache Lucene 是一个基于Java的、高性能的全文检索工具包,你可以利用它来为你的应用程序加入索引和检索功能。Lucene目前是著名的 Apache Jakarta 家族中的一个开源项目,也是目前最为流行的基于 Java 开源全文检索工具包。
下载地址:http://www.apache.org/dyn/closer.cgi/lucene/java
该版本进行了大量优化、改进和Bug修复,包括:

1. 大大降低了控制开放的IndexReader上的协议索引的RAM占用(3~5倍)。

2. 新增IndexSearcher.searchAfter,可在指定ScoreDoc后返回结果(例如之前页面的最后一个文档),以支持deep页用例。

3. 新增SearcherManager,以管理共享和重新开始跨多个搜索线程的IndexSearchers。基本的IndexReader实例如果不再进行引用,则会被安全关闭。

4. 新增SearcherLifetimeManager,为跨多个请求(例如:paging/drilldown)的索引安全地提供了一个一致的视图。

5. 将IndexWriter.optimize重命名为forceMerge,以便去阻止使用这种方法,因为它的使用代价较高,且也不需要使用。

6. 新增NGramPhraseQuery,当使用n-gram分析时,可提升30%-50%的短语查询速度。
7. 重新开放了一个API(IndexReader.openIfChanged),如果索引没有变化,则返回空值,而不是旧的reader。

8. Vector改进:支持更多查询,如通配符和用于产生摘要的边界分析。
修复了若干Bug。

详细信息参阅:http://lucene.apache.org/java/3_5_0/changes/Changes.html