У меня есть запрос на сопоставление, и я хочу выполнить агрегацию терминов (скажем, для поля doctype), чтобы рассчитать для каждого сегмента средний _score запроса. Я не нахожу, как получить доступ к полю _score в агрегации. Кто-нибудь может помочь? спасибо, Патрик
Elasticsearch: как рассчитать avg _score для каждого сегмента?
Ответы (1)
Чтобы получить доступ к счету, вам необходимо включить сценарии. Затем вы можете получить доступ к оценке в документе как показано в примере ниже:
"aggs": {
"type_bucket": {
"terms": {
"field": "_type"
},
"aggs": {
"avg_score": {
"avg": {
"script": "_score"
}
}
}
}
}
person
keety
schedule
29.06.2015
Спасибо, keety, моя ошибка заключалась в том, что я поставил field: _score вместо script: _score
- person Patrick; 30.06.2015