2014-05-15 06:36:05 -04:00
|
|
|
[[java-aggs-metrics-extendedstats]]
|
|
|
|
==== Extended Stats Aggregation
|
|
|
|
|
|
|
|
Here is how you can use
|
|
|
|
{ref}/search-aggregations-metrics-extendedstats-aggregation.html[Extended Stats Aggregation]
|
|
|
|
with Java API.
|
|
|
|
|
|
|
|
|
|
|
|
===== Prepare aggregation request
|
|
|
|
|
|
|
|
Here is an example on how to create the aggregation request:
|
|
|
|
|
|
|
|
[source,java]
|
|
|
|
--------------------------------------------------
|
2016-11-28 11:33:40 -05:00
|
|
|
ExtendedStatsAggregationBuilder aggregation =
|
2014-05-15 06:36:05 -04:00
|
|
|
AggregationBuilders
|
|
|
|
.extendedStats("agg")
|
|
|
|
.field("height");
|
|
|
|
--------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
===== Use aggregation response
|
|
|
|
|
|
|
|
Import Aggregation definition classes:
|
|
|
|
|
|
|
|
[source,java]
|
|
|
|
--------------------------------------------------
|
|
|
|
import org.elasticsearch.search.aggregations.metrics.stats.extended.ExtendedStats;
|
|
|
|
--------------------------------------------------
|
|
|
|
|
|
|
|
[source,java]
|
|
|
|
--------------------------------------------------
|
|
|
|
// sr is here your SearchResponse object
|
2015-04-20 13:45:23 -04:00
|
|
|
ExtendedStats agg = sr.getAggregations().get("agg");
|
2014-05-15 06:36:05 -04:00
|
|
|
double min = agg.getMin();
|
|
|
|
double max = agg.getMax();
|
|
|
|
double avg = agg.getAvg();
|
|
|
|
double sum = agg.getSum();
|
|
|
|
long count = agg.getCount();
|
|
|
|
double stdDeviation = agg.getStdDeviation();
|
|
|
|
double sumOfSquares = agg.getSumOfSquares();
|
|
|
|
double variance = agg.getVariance();
|
|
|
|
--------------------------------------------------
|
|
|
|
|