首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >弹性搜索结果的反馈回路

弹性搜索结果的反馈回路
EN

Stack Overflow用户
提问于 2017-03-01 04:52:11
回答 1查看 387关注 0票数 0

我有一个场景,我需要列出一堆弹性搜索的工作。搜索将主要通过关键字eg进行。(电气工程、司机等)我想要创建一个反馈系统,其中相应的关键字给予更高的权重,如果用户点击一个特定的工作。

到目前为止,这一切都是可行的。我面临问题,因为在我的系统中,用户可以搜索多个关键字,例如。(司机或电气工程)。为此构建的查询如下所示

代码语言:javascript
复制
{
  "query" : {
      "bool": {
        "should": [
           {
               "multi_match": {
                  "query" : "electrical engineering",
                  "fields" : [
                    "description^1.0",
                    "name^1.0"
                  ]
               }
           },
           {
            "multi_match": {
                  "query" : "driver",
                  "fields" : [
                    "description^1.0",
                    "name^1.0"
                  ]
               }   
           }
        ]
      }
  },
  "sort" : [
    {
      "_score" : {
        "order" : "desc"
      }
    }
  ]
}

在这个场景中,是否有一种方法,我可以将一个结果与一个特定的多匹配子句关联起来,这样我就可以确定这个结果在这里是因为word 驱动程序,而这是因为电气工程

如果任何人有更好的想法,我可以完成我的反馈循环,请自由分享它。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2017-03-02 05:32:26

我在elasticsearch论坛上找到了我的问题的答案,在这里发布同样的信息来帮助其他人。

弹性搜索提供了命名查询的概念,这些查询可用于为应用的每个查询指定名称,作为结果的一部分,ES将列出所有匹配的查询。就像。上面的查询可以这样写

代码语言:javascript
复制
{
  "query" : {
      "bool": {
        "should": [
           {
               "multi_match": {
                  "query" : "electrical engineering",
                  "fields" : [
                    "description^1.0",
                    "name^1.0"
                  ],
                  "_name" : "firstQuery"
               }
           },
           {
            "multi_match": {
                  "query" : "driver",
                  "fields" : [
                    "description^1.0",
                    "name^1.0"
                  ],
                  "_name" : "secondQuery"
               }   
           }
        ]
      }
  },
  "sort" : [
    {
      "_score" : {
        "order" : "desc"
      }
    }
  ]
}

这将返回匹配的查询的结果。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42523455

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档