带你读《Elastic Stack 实战手册》之18:——3.4.2.3.Search通过Kibana(10)

简介: 带你读《Elastic Stack 实战手册》之18:——3.4.2.3.Search通过Kibana(10)

《Elastic Stack 实战手册》——三、产品能力——3.4.入门篇——3.4.2.Elasticsearch基础应用——3.4.2.3.Search通过Kibana(9) https://developer.aliyun.com/article/1231062


Function score query 查询

 

Function score 允许你控制查询评分,是用来控制评分过程的终极武器。最高效的用法是用过滤器对结果的子集应用不同的函数,同时运用了 filter 的缓存,并且达到控制评分的过程。

 

我们想让山东的苹果搜索出现在美国苹果之前,查询商品名称包含“苹果”,当品牌中包含“美国”时,权重设置为 2,当出现“山东”时,权重设置为 40 。


GET /my_goods/_search
{
  "query": {
"function_score": {
      "query": {
        "term": {
          "goodsName": {
            "value": "苹果"
          }
        }
      },
      "boost": 2, 
      "functions": [
        {
          "filter": {
            "match":{
              "brandName":"美国"
            }
          },
          "random_score": {
          },
          "weight": 2
        },
        {
          "filter": {
            "match":{
              "brandName":"山东"
            }
          },
          "weight": 40
        }
      ],
      "max_boost": 60,
      "score_mode": "max",
      "boost_mode": "multiply",
      "min_score": 2
    }
  }
}


返回主要信息:


   "max_score" : 2.2442641,
    "hits" : [
     {
        "_index" : "my_goods",
        "_type" : "_doc",
        "_id" : "4",
        "_score" : 2.0562985,
        "_source" : {
          "goodsName" : "山东苹果UA55RU7520JXXZ 苹果54英寸 5K超高清",
          "brandName" : "山东苹果"
        }
      },
      {
        "_index" : "my_goods",
        "_type" : "_doc",
        "_id" : "3",
        "_score" : 1.7582327,
        "_source" : {
          "goodsName" : "苹果UA55RU7520JXXZ 53英寸 4K高清",
          "brandName" : "美国苹果",
        }
      }
    ]

解释几个参数:

 

l score_modemultiply: 默认,分数相乘

l avg:平均分数,第一个 function 的分数

l max:使用评分最大的分数

l min:使用评分最小的分数

 

举例,如果 2 个函数返回的分数为 1 和 2,并且它们的权重分别为 3 和 4,则他们的评分为:(1*3+2*4)/(3+4)

 

其他详解请参考官方score-functions详解:

https://www.elastic.co/guide/en/elasticsearch/reference/7.10/query-dsl-function-score-query.html#score-functions


《Elastic Stack 实战手册》——三、产品能力——3.4.入门篇——3.4.2.Elasticsearch基础应用——3.4.2.3.Search通过Kibana(11) https://developer.aliyun.com/article/1231060

 


相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
相关文章
|
SQL 存储 关系型数据库
菜鸟之路Day29一一MySQL之DDL
本文《菜鸟之路Day29——MySQL之DDL》由作者blue于2025年5月2日撰写,主要介绍了MySQL中的数据定义语言(DDL)。文章详细讲解了DDL在数据库和表操作中的应用,包括数据库的查询、创建、使用与删除,以及表的创建、修改与删除。同时,文章还深入探讨了字段约束(如主键、外键、非空等)、常见数据类型(数值、字符串、日期时间类型)及表结构的查询与调整方法。通过示例代码,读者可以更好地理解并实践MySQL中DDL的相关操作。
569 11
|
人工智能 算法 异构计算
用“吃火锅”来讲清楚大模型是什么
大语言模型就像一个超级聪明的“火锅AI服务员”,它通过海量数据训练,能根据你的需求推荐菜品、回答问题、甚至陪你聊人生哲学。它有超强的记忆力和灵活的应变能力,能接住各种奇葩问题,还会跟你玩梗互动。虽然偶尔会瞎编答案,但它绝对是个知识型选手。本文用轻松的“火锅局”方式,带你深入了解大语言模型的工作原理和特点。
499 1
|
10月前
|
人工智能 自然语言处理 搜索推荐
AI数字人解锁数字展厅的“智慧大脑”,展厅互动体验焕新升级
在数字化转型浪潮中,波塔AI数字人系统以AI技术重塑展厅体验,破解传统展厅人力成本高、交互单一等痛点。支持24小时智能讲解、多模态互动、个性化推荐、多语种服务,并联动灯光、大屏等设备打造沉浸式空间。兼具品牌代言人、智能导览员与数据分析师多重角色,助力企业实现从“展示”到“服务”的智慧升级,开启展厅新时代。
448 0
|
存储 SQL 分布式计算
|
vr&ar 图形学 API
Unity与VR控制器交互全解:从基础配置到力反馈应用,多角度提升虚拟现实游戏的真实感与沉浸体验大揭秘
【8月更文挑战第31天】虚拟现实(VR)技术迅猛发展,Unity作为主流游戏开发引擎,支持多种VR硬件并提供丰富的API,尤其在VR控制器交互设计上具备高度灵活性。本文详细介绍了如何在Unity中配置VR支持、设置控制器、实现按钮交互及力反馈,结合碰撞检测和物理引擎提升真实感,助力开发者创造沉浸式体验。
1316 1
|
前端开发 JavaScript Serverless
揭秘CSS布局神器:vw/vh、rem、%与px大PK,掌握它们,让你的网页设计秒变高大上,面试难题迎刃而解!
【8月更文挑战第4天】在Web开发中,合理选择CSS单位对响应式布局至关重要。本文探索viewport单位(vw/vh)、rem、百分比(%)及像素(px)的基础知识与应用场景。通过代码示例,展示如何运用这些单位实现全屏布局、尺寸比例调整、灵活的元素大小及固定尺寸。最后,模拟面试题,介绍如何仅用CSS实现一个元素的高度为其宽度两倍且响应视口变化的方法。
1049 8
|
SQL 安全 测试技术
渗透测试基础之永恒之蓝漏洞复现
对于当下来说我们使用的电脑大多是win11或是win10,还是有很多政府和公司,或是学校中使用的系统还停留在win7系统.今天是我进行渗透测试的第一次实战,通过永恒之蓝漏洞利用对win7系统进行渗透,当然也会对渗透测试的流程进行一个详细的介绍.,渗透测试的流程信息较为详细,内容较多,如果想看实战流程,直接通过通过这次的渗透测试,虽然不是对web间进行渗透测试,但是通过实战能够使我能够熟悉渗透测试的流程,当然在实践过程中也出现了很多问题,例如从kali上传文件到win主机路径出现问题,配置攻击模块时将ip地址设置错误,但在我不断的思考和尝试下,最终解决了问题,对于我的解决问题的能力也是一种提升.
1262 3
|
测试技术
软件复杂度量化:McCabe度量法及其环路复杂度的计算方法
McCabe度量法(McCabe's Cyclomatic Complexity)是一种经典的方法,用于度量软件程序的复杂度。通过计算程序中独立路径的数量,帮助开发人员评估代码的维护难度和测试覆盖率。本文详细介绍了McCabe度量法的原理、计算方法及其在实际应用中的作用。
3608 0
|
分布式计算 NoSQL Java
2024年最新推荐3款可以搞定中国式复杂报表的报表工具
中国式复杂报表以结构复杂、多数据源和大量信息为特点,常见于金融等领域。适合制作这类报表的工具有润乾报表、smartBI和亿信BI。润乾报表以其非线性模型擅长处理复杂报表,支持多种数据源,提供数据准备层,降低开发难度;smartBI采用真Excel架构,学习成本低,但性能可能因Excel而受限;亿信BI则注重BI功能,其在线设计器操作流畅性欠佳。在性价比方面,润乾报表以较低价格和完整功能脱颖而出。建议根据具体需求选择适合的工具进行试用。
713 1
|
前端开发
elementui源码学习之仿写一个el-card
elementui源码学习之仿写一个el-card
642 0

热门文章

最新文章