Я унаследовал запрос Elasticsearch, который я пытаюсь изменить. Запрос у меня есть на данный момент:Elasticsearch - Фильтрованный запрос с взвешенными типами
{
"fields": [
],
"from": 0,
"size": 51,
"query": {
"filtered": {
"query": {
"query_string": {
"fields": [
"data.*"
],
"default_operator": "AND",
"query": "*Search term*"
}
},
"filter": [
{
"terms": {
"type": [
"typeOne",
"typeTwo",
"typeThree"
]
}
}
]
}
}
}
Теперь то, что я пытался сделать, это увеличить один из этих терминов в течение 2 других в результатах, но не смог заставить его работать. Я попытался добавить значение «boost», но это странно дало мне противоположный эффект - он отключает любой тип, которому дается импульс.
Я попытался следующие, как «фильтр» объект:
"filter": [
{
"bool": {
"should": [
{
"term": {
"type": "typeOne"
}
},
{
"term": {
"type": "typeTwo"
}
},
{
"term": {
"type": "typeThree",
"boost": 2
}
}
]
}
}
]
Но, как я уже говорил ранее, вместо повышения «typeThree» удаляет все «typeThree» из результатов.
Может ли кто-нибудь помочь мне повысить определенный тип термина?
Я получаю сообщение об ошибке «Никакая функция с именем [вес] не зарегистрирована». когда я попробую этот запрос. Является ли это функцией, которая должна быть включена или мне нужно немного настроить этот запрос? – shiznatix