我在ElasticSearch 0.19.11中有以下文档,使用:
{ "title": "dogs species",
"col_names": [ "name", "description", "country_of_origin" ],
"rows": [
{ "row": [ "Boxer", "good dog", "Germany" ] },
{ "row": [ "Irish Setter", "great dog", "Ireland" ] }
]
}
{ "title": "Misc stuff",
"col_names": [ "foo" ],
"rows": [
{ "row": [ "Setter is impotant" ] },
{ "row": [ "Ireland is green" ] }
]
}
映射如下:
{
"table" : {
"properties" : {
"title" : {"type" : "string"},
"col_names" : {"type" : "string"},
"rows" : {
"properties" : {
"row" : {"type" : "string"}
}
}
}
}
}
问题:我现在正在搜索“爱尔兰塞特犬”,我需要在同一行中搜索字词的文档得分更高。
目前第二份文件得分为0.22,而第一份得分为0.14。
我希望第一个文档在这种情况下获得更高的分数,因为它在同一行中同时包含“Ireland”和“Setter”。怎么办呢?
答案 0 :(得分:1)
通过ElasticSearch google-group成员的大力合作,找到了解决方案。 以下是讨论的链接:https://groups.google.com/forum/?fromgroups#!topic/elasticsearch/4O9dff2SNhg