elasticsearch,Java,elasticsearch" /> elasticsearch,Java,elasticsearch" />

Java 如何在elasticsearch中为单个字段指定恒定的升压值?

Java 如何在elasticsearch中为单个字段指定恒定的升压值?,java,elasticsearch,Java,elasticsearch,elasticsearch中有很多得分/提升选项,但我还没有发现为特定字段添加恒定提升值的可能性。如果存在这样的选项,映射应该是什么样子?也许有一个选项可以根据所点击的字段来计算整个文档的分数?下面是解决方案:包装器查询“custom\u boost\u factor”乘以每种类型的嵌入式查询分数: curl -XPOST 'http://localhost:9200/test/entry/_search?pretty=true' -d '{ "query":{ "custom_b

elasticsearch中有很多得分/提升选项,但我还没有发现为特定字段添加恒定提升值的可能性。如果存在这样的选项,映射应该是什么样子?也许有一个选项可以根据所点击的字段来计算整个文档的分数?

下面是解决方案:包装器查询“custom\u boost\u factor”乘以每种类型的嵌入式查询分数:

curl -XPOST 'http://localhost:9200/test/entry/_search?pretty=true' -d '{ 
  "query":{
    "custom_boost_factor" :{
      "query" : {
        "text_phrase_prefix" : {
          "title" : "test"
        }
      },
      "boost_factor": 2.0
    }
  }
}' 

大多数类型都有一个参数
boost
。你说得对,但我更喜欢在查询时间而不是索引时间上计算分数。好的,你可以在大多数查询类型上使用
boost
参数。或者你看到了吗?谢谢。boost参数的问题在于它并不是针对每种查询类型都出现,例如“text\u phrase\u prefix”。我找到了令人满意的解决方案:名为“custom\u boost\u factor”的包装器查询——检查我对这个问题的答案。