Details
-
Improvement
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
None
-
None
-
None
Description
Currently, when an aggregation operator populates its outgoing record batch, it goes through the value vectors in its workspace and produces the output value.. for instance if the aggregate was AVG, the aggregate function workspace variables are sum and count, and we compute the sum/count to populate the output record. However, this is sub-optimal for the case where the aggregate function is simply doing a SUM or COUNT etc. In those cases, we should be able to directly transfer the entire workspace value vector to the outgoing batch and get better performance. We could maintain some property in the aggregate function itself that indicates whether it is a candidate for such an operation.