Я использую следующее определение синонима:
"медали, медаль => металлы, медали, количество медалей, большинство медалей"
Когда я ищу "Медали" в поле заголовка, такие документы, как «Медали Армении, Медали для дайвинга и т. д. 1018 *» выше, чем документ с названием «Медали». Поскольку Медали - это точное совпадение, я ожидаю, что оно будет самым высоким, но это не так. У кого-нибудь есть объяснение этому?
Я использую граничную диаграмму (от 1 до 50) при индексации документов и стандартный анализатор при поиске.
Отображение:
"title":{
"type": "text",
"analyzer": "full_search_analyzer",
"search_analyzer": "standard",
"fields": {
"keyword":{
"type": "keyword"
}
}
}
"sport_name":{
"type": "text",
"analyzer": "full_search_analyzer",
"search_analyzer": "standard",
"fields": {
"keyword":{
"type": "keyword"
}
}
},
"country_name":{
"type": "text",
"analyzer": "full_search_analyzer",
"search_analyzer": "standard",
"fields": {
"keyword":{
"type": "keyword"
}
}
},
Запрос:
query: {
bool: {
must:[{
"multi_match": {
"query": "medals",
"fields": "title^2", "sport_name", "country_name",
"minimum_should_match": "100%"
}
}],
should: {
term: {
title: "Medals"
}
},
filter: {
term: {
hideFullResults : false
}
}
}
},
Запрос находится в приложении узла.
Заранее спасибо.