Currently searching in rollups is facilitated by a specific endpoint named _rollup_search. For seamless integration of rollups we should remove this endpoint and implement its functionality in the _search endpoint.
When running aggregations using the existing _search endpoint we must implement the following:
- Merge rollup buckets with regular buckets.
- Ensure that partial buckets can merge across shards (e.g. when rollover is not on a clean interval).
- Modify existing aggregators to pull
doc_count from rollup indices, rather than just incrementing. This is needed so a "rollup metric" can provide doc counts for avg and bucketing aggregations, by allowing the aggregator framework to treat a single document as if it were multiple docs.
Producing rollups is discussed in #48003
Currently searching in rollups is facilitated by a specific endpoint named
_rollup_search. For seamless integration of rollups we should remove this endpoint and implement its functionality in the_searchendpoint.When running aggregations using the existing
_searchendpoint we must implement the following:doc_countfrom rollup indices, rather than just incrementing. This is needed so a "rollup metric" can provide doc counts for avg and bucketing aggregations, by allowing the aggregator framework to treat a single document as if it were multiple docs.Producing rollups is discussed in #48003