我正在尝试在我的弹性搜索查询中提升某些索引。现在,我的查询看起来像这样。
var query = {
"query": {
"query_string": {
"fields": ["FirstName", "LastName"],
"query": "Hank Hill",
"default_operator": "AND"
}
}
};
var boosted_indices = {
"index_A" : 1.0,
"index_B" : 1.0,
"index_C" : 10.0
};
if (boosted_indices) {
query["indices_boost"] = boosted_indices;
}
// stringify and send query in an http.get request
我知道我的查询没有提升任何索引的工作方式符合我的预期。但是,我的查询结果中仍然有很多来自“index_A”的结果,而不是大幅提升的 index_C。我知道 A 和 C 中应该有相似数量的匹配结果,所以问题一定是我没有正确提升查询。
我是否错误地设置了我的查询 JSON?在我链接的教程中,它没有提供太多背景信息。
我注意到的另一件事......返回文档的“_score”字段......所有这些都设置为null。这可能与我的文档没有根据它们来自的索引进行提升有关吗?