As the name pipeline suggests, pipeline aggregations allow us to pass the result of an aggregation as the input to the aggregation in the next stage. To pass the result, a bucket_path parameter is provided to let us specify which source will be worked on in the next stage. To define the source, we need to follow this syntax:
<aggregation_name>[<aggregation_separator>,<aggregation_name>]*[<metric_separator>,<metric>]
Here aggregation_separator is >, metric_separator is ., and the metric is the name of the metric produced in the previous stage. Pipeline aggregations can be classified into two families, parent and sibling. We will illustrate each aggregation of both families in the following subsections.