弹性搜索。 _Score 在聚合中为空。为什么?

2024-02-29

我使用 ES 1.7 版。 ES仅在“点击”部分返回_score,但我对“点击”不感兴趣,我需要来自响应的“聚合”部分的数据与 _score。为什么 ES 会这样以及如何解决它?

Requset:

{
    "size": 1,
        "query": {
            "bool": {
                "must": [
                    { "match": {"_all": {"query": "test","operator": "and","fuzziness": "2"}}}
                ],
                "should": [
                    { "multi_match" : {
                            "query":      "test"
                            ,"type":       "best_fields"
                            ,"fields":     ["ObjectData.PRTNAME","ObjectData.EXTERNALID","ObjectData.contactList.VALUE","*SERIES","*NUMBER","ObjectData.INN"]
                            ,"operator":   "or"
                            ,"boost": 3
                    }}
                ]
            } 
        },   
  "aggs": {
    "byObjectID": {
      "terms": {"field": "ObjectID"},
      "aggs": {
        "latestVer": {
          "top_hits": {
            "sort": [{"creationDate": { "order": "desc" }}]
            ,"_source": { "include": ["ObjectData.BRIEFNAME", "creationDate", "ObjectID" ]}
            ,"size": 1
          }
        }
      }
    }
  }
}

回复:

{
   "took": 16,
   "timed_out": false,
   "_shards":    {
      "total": 5,
      "successful": 5,
      "failed": 0
   },
   "hits":    {
      "total": 87,
      "max_score": 5.3479624,
      "hits": [      {
         "_index": "crmws",
         "_type": "participant",
         "_id": "AVFtAkIcSH3HWHh0wIkd",
         "_score": 5.3479624,
         "_source":          {
            "mostRecentVersion": null,
            "UserLogin": "ap",
            "creationDate": "2015-12-04T12:40:43.292Z",
            "_id": null,
            "ObjectID": 26784418,
            "EventID": null,
            "version_id": 3798,
            "ObjectTypeId": null,
            "ObjectData":   {...},
            "ObjectTypeSysName": "participant",
            "versionNumber": null
         }
      }]
   },
   "aggregations": {"byObjectID":    {
      "doc_count_error_upper_bound": 0,
      "sum_other_doc_count": 0,
      "buckets":       [
                  {
            "key": 26745417,
            "doc_count": 21,
            "latestVer": {"hits":             {
               "total": 21,
               "max_score": null,
               "hits": [               {
                  "_index": "crmws",
                  "_type": "participant",
                  "_id": "AVFtQCCtSH3HWHh0wItF",
                  "_score": null,
                  "_source":                   {
                     "creationDate": "2015-12-04T13:48:17.949Z",
                     "ObjectID": 26745417,
                     "ObjectData": {"BRIEFNAME": "Верный-Преверный В. В."}
                  },
                  "sort": [1449236897949]
               }]
            }}
         },
         ...
      ]
   }}
}

由于您正在使用排序,因此您需要显式设置“赛道成绩 https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-sort.html#_track_scores" 用于计算分数。

Example:

{
    "size": 1,
        "query": {
            "bool": {
                "must": [
                    { "match": {"_all": {"query": "test","operator": "and","fuzziness": "2"}}}
                ],
                "should": [
                    { "multi_match" : {
                            "query":      "test"
                            ,"type":       "best_fields"
                            ,"fields":     ["ObjectData.PRTNAME","ObjectData.EXTERNALID","ObjectData.contactList.VALUE","*SERIES","*NUMBER","ObjectData.INN"]
                            ,"operator":   "or"
                            ,"boost": 3
                    }}
                ]
            } 
        },   
  "aggs": {
    "byObjectID": {
      "terms": {"field": "ObjectID"},
      "aggs": {
        "latestVer": {
          "top_hits": {
            "sort": [{"creationDate": { "order": "desc" }}]
            ,"_source": { "include": ["ObjectData.BRIEFNAME", "creationDate", "ObjectID" ]}
            ,"size": 1,
            'track_scores" : 1
          }
        }
      }
    }
  }


}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

弹性搜索。 _Score 在聚合中为空。为什么? 的相关文章

随机推荐

  • 项目导入需要 Sbt 0.12.4+

    我目前正在阅读Play for Scala Covers Play 2Peter Hilton 的书 出版商 Manning 并尝试坚持他们在书中概述的版本 播放版本 2 1 1 我下载了新的 IntelliJ IDEA 14 CE 应用程
  • Facebook Android SDK 的密钥哈希无效

    我正在尝试使用 Facebook Android SDK 开发一个带有 Facebook 登录按钮的简单应用程序 但我在密钥哈希方面遇到了麻烦 我创建了调试密钥和发布密钥 调试键 keytool exportcert alias andro
  • 如何在 Firefox 中调试 Service Worker?

    在 FF 中调试 Service Worker 似乎非常痛苦 我知道从主页我可以 进入应用程序面板 点击 关于调试 在新页面中搜索我的员工以及其他 200 名员工 单击开始 然后单击检查 我必须寻找两个控制台而不是一个并通过 两者之间的消息
  • git rebase -i HEAD~7 -- 在编辑器中仅显示“noop”

    我正在尝试将位于 HEAD 的提交压缩为后面的提交 当我跑步时git rebase i HEAD 7 但是 我只看到一个noop在编辑器中 我完全不知道这是如何运作的 我在分行工作 cleanup 我创建的 使用checkout b cle
  • 如何检查 VBScript 的默认主机是 WScript 还是 CScript?

    我想知道特定机器上 VBScript 的默认主机是什么 是否设置为 WScript 还是 CScript 例如 如果我使用cscript h cscript s那么有什么方法可以检查主机 VBScript 是否设置为 cscript 我找到
  • 使用逗号运算符是个好习惯吗?

    我最近 实际上仅在 SO 上 遇到了 C C 逗号运算符的使用 据我所知 它在左侧和右侧运算符之间的线上创建了一个序列点 以便您拥有可预测的 定义的 评估顺序 我对为什么要在语言中提供这一点感到有点困惑 因为它似乎是一个可以应用于本来不应该
  • 如何从 vue 3 中的 slot 获取 ref?

    我需要用名字来聚焦参考test1设置一些放置在组件槽中的值 从外部 有可能以某种方式做到这一点吗 我尝试从 refs 或 slots 获取 但失败了 App vue
  • 实时键盘输入到控制台(在 Windows 中)?

    我有一个双向链接列表类 我想在用户键入字符时将字符添加到列表中 或者每次用户按退格键时删除列表中的最后一个节点 同时在控制台中实时显示结果 我将使用哪些函数来拦截单个键盘输入并将其实时显示到控制台 所以结果如下 用户开始输入 Typ 用户停
  • 将列表 1 中的特定数字与列表 2 中的特定数字交换

    最近在温习一些Prolog 我有点喜欢随机提出问题来尝试解决 然后解决它们 但这是相当困难的 我不是一个会放弃我已经着手解决的问题的人 问题 我想创建一个谓词 它有 2 个预先确定的列表 2 个要交换的数字 然后在交换完成后输出列表 进一步
  • 操作 ggpairs 中的轴标题 (GGally)

    我使用下面的代码来生成以下图表 Setup data airquality Device start png filename example png units cm width 20 height 14 res 300 Define c
  • 从字符串中提取最大的数字序列(正则表达式,或?)

    我有类似于以下内容的字符串 4123499 TESCO45 123 every99999994 54 我想分别提取每个字符串中最大的数字序列 4123499 99999994 我以前尝试过正则表达式 我使用的是VB6 Set rx New
  • 将卡片添加到 ListView

    我正在尝试获取列表Cards https docs flutter io flutter material Card class html 并尝试使用Expanded小部件 但得到了overflow error My code new Ex
  • 带有基本身份验证的 SSL 证书问题

    我正在尝试在 web 视图中加载具有基本身份验证的 SSL 页面 但即使我在 onReceivedSslError 中运行proceed 并且 usr pwd 是正确的 我也无法通过 onReceivedHttpAuthRequest 如果
  • 将任意 HTML 插入 DocumentFragment

    我知道adding innerHTML记录片段 http lists w3 org Archives Public public webapps 2011OctDec 0663最近已经讨论过 并且有望包含在 DOM 标准中 但是 您同时应该
  • 如何将 Matplotlib 图转换为 PIL Image 对象(不保存图像)

    正如标题所述 我正在尝试将fig to a PIL Image 我目前可以通过首先保存来做到这一点fig到磁盘 然后使用打开该文件Image open 但该过程花费的时间比预期的要长 我希望通过跳过本地保存步骤 速度会快一点 这是我到目前为
  • 构建服务器上的 ASP.NET Core 2.0 项目的 Nuget 还原失败

    我正在尝试在 Windows Server 2012R2 上使用 TeamCity 为 NET Framework 4 6 2 不是 NET Core 构建 ASP NET Core 2 0 应用程序 服务器中安装了以下组件 微软 Net
  • 对 ES 模块执行 require.resolve

    我需要解析 ES 模块 通过导入静态导入或类似函数的动态导入 https developer mozilla org en US docs Web JavaScript Reference Statements import 其方式类似于
  • 如何在scala中实现Serialized接口?

    我有 scala 类 例如 Entity users class User Required val cid String val isAdmin Boolean false Required val dateJoined Date new
  • 如何调用 Selenium 到另一个类:NullPointerException

    我们如何将对象 selenium 调用到另一个具有一半 selenium 代码的文件 在 PHP 中我可以通过以下代码 login this gt login sel 我可以在 Java 中执行相同的操作 因为我的 selenium 设置位
  • 弹性搜索。 _Score 在聚合中为空。为什么?

    我使用 ES 1 7 版 ES仅在 点击 部分返回 score 但我对 点击 不感兴趣 我需要来自响应的 聚合 部分的数据与 score 为什么 ES 会这样以及如何解决它 Requset size 1 query bool must ma