ElasticSEarch的分数优化
我们有一个储存在ElasticSearch中的产品目录。 每个文档如下所示:ElasticSEarch的分数优化,search,
elasticsearch,full-text-search,Search,
elasticsearch,Full Text Search,我们有一个储存在ElasticSearch中的产品目录。 每个文档如下所示: { 'family': 'products family' 'category': 'products category' 'name': 'product name' 'description': 'product description' } 我们正在尝试构建一个查询,该查询将获得搜索词的模糊匹配,并按以下字段顺序对结果进行评分: 家族 类别 名字 描述 有没有办法做到这一点?一个简
{
'family': 'products family'
'category': 'products category'
'name': 'product name'
'description': 'product description'
}
我们正在尝试构建一个查询,该查询将获得搜索词的模糊匹配,并按以下字段顺序对结果进行评分:
- 家族
- 类别
- 名字
- 描述
有没有办法做到这一点?一个简单的方法是使用多匹配查询,为每个字段提供适当的提升
{
"query": {
"multi_match": {
"query": "produce",
"fields": ["family^4","category^3","name^2","description"],
"fuzziness" : "AUTO",
"rewrite" : "constant_score_auto"
}
}
}
在同一字段上匹配的所有文档将获得相同的分数。
可以通过调整参数来更改此行为
进一步说明了这一点