WARNING: Version 2.4 of Elasticsearch has passed its EOL date.
This documentation is no longer being maintained and may be removed. If you are running this version, we strongly advise you to upgrade. For the latest information, see the current release documentation.
This functionality is experimental and may be changed or removed completely in a future release. Elastic will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features.
A sibling pipeline aggregation which calculates the (mean) average value of a specified metric in a sibling aggregation. The specified metric must be numeric and the sibling aggregation must be a multi-bucket aggregation.
An avg_bucket
aggregation looks like this in isolation:
{ "avg_bucket": { "buckets_path": "the_sum" } }
Table 1. avg_bucket
Parameters
Parameter Name | Description | Required | Default Value |
---|---|---|---|
| The path to the buckets we wish to find the average for (see | Required | |
| The policy to apply when gaps are found in the data (see Dealing with gaps in the data for more details) | Optional, defaults to | |
| format to apply to the output value of this aggregation | Optional, defaults to |
The following snippet calculates the average of the total monthly sales
:
{ "aggs" : { "sales_per_month" : { "date_histogram" : { "field" : "date", "interval" : "month" }, "aggs": { "sales": { "sum": { "field": "price" } } } }, "avg_monthly_sales": { "avg_bucket": { "buckets_path": "sales_per_month>sales" } } } }
|
And the following may be the response:
{ "aggregations": { "sales_per_month": { "buckets": [ { "key_as_string": "2015/01/01 00:00:00", "key": 1420070400000, "doc_count": 3, "sales": { "value": 550 } }, { "key_as_string": "2015/02/01 00:00:00", "key": 1422748800000, "doc_count": 2, "sales": { "value": 60 } }, { "key_as_string": "2015/03/01 00:00:00", "key": 1425168000000, "doc_count": 2, "sales": { "value": 375 } } ] }, "avg_monthly_sales": { "value": 328.33333333333333 } } }