Здравствуйте, у меня есть индекс в Elasticsearch, в котором хранятся сведения о группе людей. У одной группы может быть сразу несколько характеристик одного типа, например в группе 100 человек, из них 10 человек с одним диагнозом, 50 с другим, 40 с третьим. Существуют параметры по которым производится ранжирование, и параметры по которым производится фильтрация. Если характеристик одного типа(как в случае с диагнозом) несколько, то используется тип данных nested, но существуют характеристики, которые отображаются на группу 1 к 1. Из-за такого различия ранжирование можно проводить отдельно на верхнем уровне документа и в nested запросе, но итоговая оценка должна быть суммой этих операций. Вопрос в том, можно ли как то учесть оценку из nested запроса в оценку всего документа ?
Конечный score запроса nested определяется параметром score_mode. Этот score потом можно объединять с score корневого документа стандартными методами (например поместив и то и другое в запрос bool
, если вам нужна сумма).
1 Like
Спасибо, попробую сделать так, проглядел эту опцию в документации. А то сейчас приходится считать все score заранее и класть их в индекс.
This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.