#elasticsearch
#elasticsearch
Вопрос:
Когда я выполняю поиск в Elasticsearch с шаблонным запросом (подстановочный знак в конце), результат оценки для всех обращений в 1.0. Это специально? Могу ли я где-нибудь изменить это поведение?
Ответ №1:
Elasticsearch в основном говорит, что все результаты одинаково релевантны, поскольку вы предоставили неквалифицированный поиск (шаблон, эквивалентный a match_all
). Как только вы добавите дополнительный контекст с помощью различных типов запросов, вы заметите изменения в оценке.
В зависимости от вашей конечной цели вы можете заглянуть в ссылку на Function Score
запрос: https://www.elastic.co/guide/en/elasticsearch/reference/6.7/query-dsl-function-score-query.html
Первый приведенный пример даст вам по существу случайные оценки для всех документов в вашем кластере:
GET /_search
{
"query": {
"function_score": {
"query": { "match_all": {} },
"boost": "5",
"random_score": {},
"boost_mode":"multiply"
}
}
}