Search 弹性搜索中特定字段值的提升
嗨,我需要根据字段的特定值提升文档。。“我的文档”包含一个名为“区域”的字段。。根据该地区的现有价值,我需要提升我的文档。。 这些是我的文件Search 弹性搜索中特定字段值的提升,search,
elasticsearch,Search,
elasticsearch,嗨,我需要根据字段的特定值提升文档。。“我的文档”包含一个名为“区域”的字段。。根据该地区的现有价值,我需要提升我的文档。。 这些是我的文件 { "title":"INOX: Malleshwaram - Mantri Square", "region":"Bangalore" } { "title":"INOX: Bund Garden Road", "region":"Pune" } { "title":"INOX: Glo
{
"title":"INOX: Malleshwaram - Mantri Square",
"region":"Bangalore"
}
{
"title":"INOX: Bund Garden Road",
"region":"Pune"
}
{
"title":"INOX: Glomax Mall, Kharghar",
"region":"Mumbai"
}
我尝试在我的查询中使用rescore查询,如下所示
"rescore" : {
"query" : {
"score_mode":"total",
"query_weight" : 2.5,
"rescore_query_weight" : 0.5,
"rescore_query" : {
"match" : {
"region" : {
"query" : "mumbai",
"slop" : 2
}
}
}
}
}
}
但是它没有按要求正常工作。有什么办法解决这个问题吗?。。
提前谢谢 为什么重新扫描,您所需要的只是增强。根据您使用的查询类型,可以在
"query_string": {
"fields":["region^56"],
"use_dis_max" : true,
"query": "mumbai"
}
其中^56是增压值
您也可以使用这里提到的
如果您使用的是bool查询,那么可以像这样使用boost来增强所有查询
{
"bool" : {
"must" : {
"term" : { "region" : "mumbai" }
},
"boost" : 25.0
}
}很抱歉,我没有清楚地解释这个问题。我也有关于活动的文档。我需要优先考虑活动,然后选择该地区的地点。示例{“title”:“inoder”,“type”:“movie”}如果这是我的活动,那么它应该首先显示活动,然后显示该地点的地点。是否有其他方法可以提高特定领域的发生率?我不想将所有字段都放入“字段”:[field1,field2…]。我想搜索所有字段,但只搜索一些字段。有一天,我需要增强具有特定字段的记录,而不是像配置文件图片一样为空。我通过向bool查询添加一个shoul来实现这一点,如果您需要所有名为“shady”的人,它将为shoul-so中的每个事件添加点,并请给我有个人资料图片的人。这很容易通过必输查询中的查询名称和shoul中的图片来实现,至少应匹配0
“bool”:{“必输”:{“term”:{“name”:“shady”}},“should”:{“term”:{“have_pp”:“yes”}}