zoukankan      html  css  js  c++  java
  • elasticsearch 基础 —— Explain、Version、min_score、query  rescorer

    Explain

    相关度得分计算:

    GET /_search
    {
        "explain": true,
        "query" : {
            "term" : { "user" : "kimchy" }
        }
    }

    Version

    返回每个搜索命中的版本:

    GET /_search
    {
        "version": true,
        "query" : {
            "term" : { "user" : "kimchy" }
        }
    }

    Index Boots

    允许在搜索多个索引时为每个索引配置不同的提升权重。当来自一个索引的命中比来自另一个索引的命中更重要时,这非常方便:

    GET /_search
    {
        "indices_boost" : {
            "index1" : 1.4,
            "index2" : 1.3
        }
    }

    您还可以将其指定为数组来控制增强的顺序。

    GET /_search
    {
        "indices_boost" : [
            { "alias1" : 1.4 },
            { "index*" : 1.3 }
        ]
    }

    min_score

    排除_score小于min_score中指定的最小值的文档:

    GET /_search
    {
        "min_score": 0.5,
        "query" : {
            "term" : { "user" : "kimchy" }
        }
    }

    query  rescorer

    query rescorer仅对query和post_filter阶段返回的Top-K结果执行第二个查询。每个分片上将检查的文档数量可以通过window_size参数控制,该参数默认为10。 默认情况下,原始查询和rescore查询的分数线性组合,以生成每个文档的最终_score。可以分别使用query_weight和rescore_query_weight来控制原始查询和rescore查询的相对重要性。两者都默认为1。

    POST /_search
    {
       "query" : {
          "match" : {
             "message" : {
                "operator" : "or",
                "query" : "the quick brown"
             }
          }
       },
       "rescore" : {
          "window_size" : 50,
          "query" : {
             "rescore_query" : {
                "match_phrase" : {
                   "message" : {
                      "query" : "the quick brown",
                      "slop" : 2
                   }
                }
             },
             "query_weight" : 0.7,
             "rescore_query_weight" : 1.2
          }
       }
    }

    可以使用score_mode控制分数组合的方式:

    分数模式 描述

    total

    添加原始分数和rescore查询分数。默认值。

    multiply

    将原始分数乘以rescore查询分数。对function query重新调整有用。

    avg

    平均原始分数和rescore查询分数。

    max

    取最大原始分数和rescore查询分数。

    min

    取最初得分和rescore查询得分的分钟。

    Multiple Rescores

    也可以按顺序执行多个重新扫描:

    POST /_search
    {
       "query" : {
          "match" : {
             "message" : {
                "operator" : "or",
                "query" : "the quick brown"
             }
          }
       },
       "rescore" : [ {
          "window_size" : 100,
          "query" : {
             "rescore_query" : {
                "match_phrase" : {
                   "message" : {
                      "query" : "the quick brown",
                      "slop" : 2
                   }
                }
             },
             "query_weight" : 0.7,
             "rescore_query_weight" : 1.2
          }
       }, {
          "window_size" : 10,
          "query" : {
             "score_mode": "multiply",
             "rescore_query" : {
                "function_score" : {
                   "script_score": {
                      "script": {
                        "source": "Math.log10(doc.likes.value + 2)"
                      }
                   }
                }
             }
          }
       } ]
    }
  • 相关阅读:
    WEB上传大文件解决方案
    上传大文件的解决方案
    网页文件断点上传
    超大文件上传方案(B/S)
    asp.net选择文件夹上传
    java文件断点上传
    超大文件上传方案(网页)
    web选择文件夹上传
    jsp选择文件夹上传
    jsp文件断点上传
  • 原文地址:https://www.cnblogs.com/gmhappy/p/11864048.html
Copyright © 2011-2022 走看看