Apache Lucene是一个开放源程序的搜索引擎,利用它可以轻易地为Java软件加入全文搜索功能,强大的搜索功能成就了他这一特点,它能帮助你搜索到你想要的信息,帮你排列出你最想要的信息。
软件功能
1、查询执行
术语查询,短语查询和布尔查询引入了新的优化,可以在不需要总命中数时有效地跳过非竞争性文档。根据确切的查询和数据分布,查询可能会在几个百分点之间运行得更慢,速度也要快几倍,尤其是术语查询和纯粹的析取。
为了支持这种增强,已经进行了一些API更改:* TopDocs.totalHits不再是一个长的,而是一个给出实际命中数下限的对象。* IndexSearcher的search和searchAfter方法现在只计算总命中次数准确地高达1000以默认启用此优化。*现在需要查询才能产生非负分数。
2、编解码器
现在发布索引得分影响以及跳过数据。这就是术语查询在不需要命中计数时优化热门命中集合的方式。
Doc值引入了跳转表,以便在不断的时间内前进。这对稀疏字段特别有用。
FST现在使用术语索引为非主键字段在堆外加载MMapDirectory,减少了这些字段的堆使用。
3、自定义评分
新FeatureField功能允许将静态功能(如pagerank)有效集成到乐谱中。此外,新的LongPoint#newDistanceFeatureQuery和LatLonPoint#newDistanceFeatureQuery方法分别允许通过新近度和地理距离来提升。这些新助手针对不需要总命中数的情况进行了优化。例如,如果pagerank在您的分数中具有显着的权重,那么Lucene可能能够跳过具有低pagerank值的文档。
软件特色:
自带高效的搜索算法,提供对排名的搜索支持,使用户能看到的最好的匹配结果在列表顶部的返回。
阿帕奇Lucene的包括用于范围广泛的搜索查询类型,包括短语,范围,通配符等的支持。此外,它允许用户执行派出搜索和受任何场对结果排序。
随着这一计划的帮助下,用户可以执行多个索引搜索,并且还可以同时更新和搜索的优势。
更新日志
Javadocs现在使用 Java 8u121 成功构建
修复了在封装 TermContext 的 TermQuery 或 SpanTermQuery 对象被缓存的情况下的内存泄漏
修复了使用 BEST_COMPRESSION 选项配置编解码器时的本机内存泄漏
AnalyzingInfixSuggester 现在只有在需要应用更改时才打开 IndexWriter