java - 如何为elasticsearch中的单个字段分配恒定的提升值?

标签 java elasticsearch

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

最佳答案

这里是解决方案:包装查询“custom_boost_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
    }
  }
}' 

关于java - 如何为elasticsearch中的单个字段分配恒定的提升值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18403659/

相关文章:

php - 尽管查询正确,ElasticSearch没有返回任何结果

elasticsearch - elasticsearch存在用于对象类型字段的过滤器

java - 如何在 Android 中的自定义适配器类中使用或实例化 Sqlite Database Helper 类实例?

java - arraylist java编译错误

java - 将 Spring 与 Google Cloud SQL 连接时出错

javascript - 将数据从 Node.js 流上传到 ElasticSearch 数据库

Java util Preferences 大约每 30 秒持续访问一次磁盘

java - 我的控制台说它终止了一个文件,但它从未在控制台中写入我需要的单词

linux - Elastic filebeat 6.5.1错误: failed to read process cgroups

ElasticSearch 在多索引、多类型搜索时返回 404