Моя проблема в том, что при максимальной агрегации баллов, которая сортируется по _score, в сочетании с агрегацией терминов, отображается другое значение doc_count.
Вот тот блок агрегации, который я хочу, но с меньшим значением doc_countдля определенных результатов.Опять же, оно всегда дает меньшее значение;никогда не выше.
"aggs": {
"group_by_field": {
"terms": {
"field": "field4",
"order": {
"max_score": "desc"
}
},
"aggs": {
"max_score": {
"max": {
"script": "_score"
}
}
}
}
}
Вот блок агрегации, который я не хочу, но показывает правильный doc_count для всех результатов.
"aggs": {
"group_by_target": {
"terms": {
"field": "target"
}
}
}
Для тех, кто заинтересован, вот мой полныйосновной запрос:
{
"index": "myIndex",
"type": "myType",
"body": {
"query": {
"bool": {
"filter": {
0: {
"term": {
"term1": false,
}
}
},
"must": {
"bool": {
"should": {
0: {
"match_phrase": {
"phrase1": "example",
}
}
},
"minimum_should_match": 1,
}
}
}
},
"size": 0,
"_source": {
0: "field1",
1: "field2",
2: "field3",
3: "field4",
},
"aggs": {
"group_by_field": {
"terms": {
"field": "field4",
"size": 25,
"order": {
"max_score": "desc",
}
},
"aggs": {
"max_score": {
"max": {
"script": "_score",
}
},
"my_top_agg": {
"top_hits": {
"size": 3,
"_source": {
0: "field1",
1: "field2",
2: "field3",
3: "field4",
}
}
}
}
},
"my_total": {
"cardinality": {
"field": "field4",
}
}
}
}
}
Я протестировал оба запроса, и каждый раз при выводе агрегации он показывает одно и то же неверное значение doc_count.В чем причина проблемы?