Apache Lucene 8.0.0 发布,Java 全文搜索引擎

  

Lucene PMC 宣布推出 Apache Lucene 的最新版本 8.0.0,可在生产环境中使用。

Lucene 是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎、部分文本分析引擎。目的是为软件开发人员提供一个简单易用的工具包,以方便地在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。

新版本的亮点包括:

查询执行

新版本对术语查询、短语查询和布尔查询进行了优化,在不需要总点击数的时候,可以有效地跳过不具竞争性的文档。根据实际查询和数据分布的不同,查询的速度会在慢几个百分点和快几倍之间变化,对术语查询和纯粹析取(pure disjunctions)来说更是如此。

为配合这个改进,一些 API 做了改动:

  • TopDocs.totalHits 现在是一个能给出实际点击数下限的对象。

  • IndexSearchersearchsearchAfter 方法可以精确地计算总点击数,现在最大值只能可达 1,000,以便查询优化的默认启用。

  • 现在需要查询才能产生非负分数。

编解码器

  • 发布当下的索引得分,会影响到附带的的跳过数据(skip data)。这也是在点击计数不需要的情况下,术语查询对热门点击集合进行优化的方式。

  • Doc 值引入了跳转表,以便可以不中断地运行,这对稀疏字段来说有很大作用。

  • 现在术语索引 FST 会在堆外加载使用 MMapDirectory 的非主键字段,从而减少这些字段的堆使用。

自定义评分

新的 FeatureField 允许将诸如 pagerank 的静态特征有效地集成到分数中,并且新的 LongPoint#newDistanceFeatureQueryLatLonPoint#newDistanceFeatureQuery 方法可以分别从新近度(recency)和地理距离来提升分数。这些新帮手针对不需要总点击数的情况进行了优化。举个例子,如果 pagerank 在您的分数中有着高的权重,那么 Lucene 往往能跳过低 pagerank 值的文档。

具体更新信息可查阅更改日志

下载地址:http://lucene.apache.org/core/downloads.html

猜你喜欢

转载自www.oschina.net/news/105328/apache-lucene-8-0-0-released
0条评论
添加一条新回复