Приоритет результатов поиска в упругом поиске - PullRequest
0 голосов
/ 24 октября 2019

У меня есть многоиндексный поисковый запрос с несколькими полями, и мне нужно расставить приоритеты по результатам запроса, т.е. у меня есть список приоритетов, и если результаты, возвращаемые запросом, присутствуют в списке приоритетов, я хочуискать, чтобы набрать их выше.

В настоящее время я делаю это после того, как ES вернул результаты. Я просматриваю весь список и, если совпадающие результаты присутствуют, я помещаю их перед их разделом. Есть ли способ достичь этого непосредственно в ES?

Techstack:

Python 3.5
ElasticSearch 6.6.0

Для справки: запрос ES в nd-json.

{"index": "countries"}
{"min_score": 20.0, "size": 5, "query": {"multi_match": {"fuzziness": "AUTO", "fields": ["name^2", "region"], "query": "new york", "operator": "and"}}}
{"index": "cities"}
{"min_score": 20.0, "size": 10, "sort": [{"_geo_distance": {"geo_location": {"lat": 40.7128, "lon": -74.2708}, "unit": "km"}}, "_score"], "query": {"multi_match": {"fuzziness": "AUTO", "fields": ["name^2", "state", "country"], "query": "new york", "operator": "and"}}}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...