Class TimeSeriesAggregationOperatorFactories

java.lang.Object
org.elasticsearch.compute.operator.TimeSeriesAggregationOperatorFactories

public final class TimeSeriesAggregationOperatorFactories extends Object
This class provides operator factories for time-series aggregations. A time-series aggregation executes in three stages, deviating from the typical two-stage aggregation. For example: sum(rate(write_requests)), avg(cpu) BY cluster, time-bucket 1. Initial Stage: In this stage, a standard hash aggregation is executed, grouped by tsid and time-bucket. The values aggregations are added to collect values of the grouping keys excluding the time-bucket, which are then used for final result grouping. rate[INITIAL](write_requests), avg[INITIAL](cpu), values[SINGLE](cluster) BY tsid, time-bucket 2. Intermediate Stage: Equivalent to the final mode of a standard hash aggregation. This stage merges and reduces the result of the rate aggregations, but merges (without reducing) the results of non-rate aggregations. rate[FINAL](write_requests), avg[INTERMEDIATE](cpu), values[SINGLE](cluster) BY tsid, time-bucket 3. Final Stage: This extra stage performs outer aggregations over the rate results and combines the intermediate results of non-rate aggregations using the specified user-defined grouping keys. sum[SINGLE](rate_result), avg[FINAL](cpu) BY cluster, bucket
  • Constructor Details

    • TimeSeriesAggregationOperatorFactories

      public TimeSeriesAggregationOperatorFactories()