Source code for pandagg.node.aggs.pipeline

"""Pipeline aggregations:
https://www.elastic.co/guide/en/elasticsearch/reference/2.3/search-aggregations-pipeline.html
"""
from typing import List

from pandagg.node.aggs.abstract import Pipeline, ScriptPipeline


[docs]class AvgBucket(Pipeline): KEY = "avg_bucket" VALUE_ATTRS = ["value"]
[docs]class Derivative(Pipeline): KEY = "derivative" VALUE_ATTRS = ["value"]
[docs]class MaxBucket(Pipeline): KEY = "max_bucket" VALUE_ATTRS = ["value"]
[docs]class MinBucket(Pipeline): KEY = "min_bucket" VALUE_ATTRS = ["value"]
[docs]class SumBucket(Pipeline): KEY = "sum_bucket" VALUE_ATTRS = ["value"]
[docs]class StatsBucket(Pipeline): KEY = "stats_bucket" VALUE_ATTRS = ["count", "min", "max", "avg", "sum"]
[docs]class ExtendedStatsBucket(Pipeline): KEY = "extended_stats_bucket" VALUE_ATTRS = [ "count", "min", "max", "avg", "sum", "sum_of_squares", "variance", "std_deviation", "std_deviation_bounds", ]
[docs]class PercentilesBucket(Pipeline): KEY = "percentiles_bucket" VALUE_ATTRS = ["values"]
[docs]class MovingAvg(Pipeline): KEY = "moving_avg" VALUE_ATTRS = ["value"]
[docs]class CumulativeSum(Pipeline): KEY = "cumulative_sum" VALUE_ATTRS = ["value"]
[docs]class BucketScript(ScriptPipeline): KEY = "bucket_script" VALUE_ATTRS = ["value"]
[docs]class BucketSelector(ScriptPipeline): KEY = "bucket_selector" VALUE_ATTRS: List[str] = []
[docs]class BucketSort(ScriptPipeline): KEY = "bucket_sort" VALUE_ATTRS: List[str] = []
[docs]class SerialDiff(Pipeline): KEY = "serial_diff" VALUE_ATTRS = ["value"]