Elasticsearch plugin开发 之 自定义payload_score query

本文介绍了如何开发Elasticsearch的payload_score查询插件,详细讲解了PayloadScoreQuery、PayloadScoreQParserPlugin和PayloadScoreQueryBuilder的实现过程,包括从XContent解析参数和构造PayloadScoreQuery的方法,并提供了执行示例。

当需要将term的权重存储到索引中时,需要保存成payload的格式:

源代码:https://github.com/limingnihao/elasticsearch-reference/tree/master/Examples

官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/7.10/analysis-delimited-payload-tokenfilter.html

类似于:

the|0 brown|3 fox|4 is|0 quick|10

查询的时候,如果需要用到保存好的value,则需要lucene 的PayloadScoreQuery或者PayloadCheckQuery。

PayloadScoreQuery:

首先查看下lucene的PayloadScoreQuery的构造方法:


  /**
   * Creates a new PayloadScoreQuery
   * @param wrappedQuery the query to wrap
   * @param function a PayloadFunction to use to modify the scores
   * @param decoder a PayloadDecoder to convert payloads into float values
   * @param includeSpanScore include both span score and payload score in the scoring algorithm
   
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值