AggregateFunctiondoes. This optimization can be applied to functions for which the following property holds: the result of applying a function
fto a row set
S1 UNION ALL S2can be obtained by applying
fto parts of the row set separately, and then again applying
fto the results:
f(S1 UNION ALL S2) = f(f(S1) UNION ALL f(S2)). This property guarantees that partial aggregation results are enough to compute the combined one, so we don’t have to store and process any extra data.
The following aggregate functions are supported:
Values of the
SimpleAggregateFunction(func, Type) look and stored the same way as
Type, so you do not need to apply functions with
SimpleAggregateFunction has better performance than
AggregateFunction with same aggregation function.
CREATE TABLE t ( column1 SimpleAggregateFunction(sum, UInt64), column2 SimpleAggregateFunction(any, String) ) ENGINE = ...
Rating: 1.6 - 16 votesWas this content helpful?