Агрегация вычисления статистических данных (Stats bucket)
Вспомогательная агрегация, которая вычисляет различные статистические данные по всем группам заданного метрического показателя в вспомогательной агрегации. Заданный метрический показатель должен быть числовым, а вспомогательная агрегация должна быть агрегацией с несколькими группами.
Синтаксис
Агрегация stats_bucket выглядит следующим образом:
{
"stats_bucket": {
"buckets_path": "the_sum"
}
} Таблица 74. Параметры stats_bucket
| Имя параметра | Описание | Требуется | Значение по умолчанию |
|---|---|---|---|
| Путь к группам, для которых необходимо вычислить статистические данные (см. | Требуется | |
| Политика, применяемая при обнаружении пробелов в данных (см. Обработка пробелов в данных для получения дополнительных сведений) | Необязательно |
|
| формат, применяемый к выходному значению этой агрегации | Необязательно |
|
Следующий фрагмент вычисляет статистические данные для ежемесячных sales:
POST /sales/_search
{
"size": 0,
"aggs": {
"sales_per_month": {
"date_histogram": {
"field": "date",
"calendar_interval": "month"
},
"aggs": {
"sales": {
"sum": {
"field": "price"
}
}
}
},
"stats_monthly_sales": {
"stats_bucket": {
"buckets_path": "sales_per_month>sales"
}
}
}
} |
|
И следующий может быть ответом:
{
"took": 11,
"timed_out": false,
"_shards": ...,
"hits": ...,
"aggregations": {
"sales_per_month": {
"buckets": [
{
"key_as_string": "2015/01/01 00:00:00",
"key": 1420070400000,
"doc_count": 3,
"sales": {
"value": 550.0
}
},
{
"key_as_string": "2015/02/01 00:00:00",
"key": 1422748800000,
"doc_count": 2,
"sales": {
"value": 60.0
}
},
{
"key_as_string": "2015/03/01 00:00:00",
"key": 1425168000000,
"doc_count": 2,
"sales": {
"value": 375.0
}
}
]
},
"stats_monthly_sales": {
"count": 3,
"min": 60.0,
"max": 550.0,
"avg": 328.3333333333333,
"sum": 985.0
}
}
}
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/search-aggregations-pipeline-stats-bucket-aggregation.html