面试题答案
一键面试- 实现步骤:
- 定义映射:在创建索引时,明确每个字段的类型以及是否参与搜索和权重设置。例如,如果有一个
title
字段和content
字段,title
字段可能希望权重更高。 - 设置权重:在查询时,通过设置不同字段的权重来调整搜索结果。
- 定义映射:在创建索引时,明确每个字段的类型以及是否参与搜索和权重设置。例如,如果有一个
- 相关API使用:
- 定义映射:可以使用
PUT
请求创建索引并定义映射。例如:
- 定义映射:可以使用
PUT /your_index
{
"mappings": {
"properties": {
"title": {
"type": "text"
},
"content": {
"type": "text"
}
}
}
}
- 设置权重查询:在搜索时,使用
multi - match
查询并设置boost
参数来指定字段权重。例如:
GET /your_index/_search
{
"query": {
"multi_match": {
"query": "your_search_term",
"fields": [
"title^5",
"content"
]
}
}
}
这里title^5
表示title
字段的权重是content
字段(默认权重为1)的5倍,boost
值越大,该字段在搜索结果中的权重越高,对搜索相关性的影响越大。