You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@quickstep.apache.org by "Jianqiao Zhu (JIRA)" <ji...@apache.org> on 2017/02/05 04:10:41 UTC
[jira] [Created] (QUICKSTEP-70) Add CollisionFreeVectorTable to
support specialized high-performance aggregation
Jianqiao Zhu created QUICKSTEP-70:
-------------------------------------
Summary: Add CollisionFreeVectorTable to support specialized high-performance aggregation
Key: QUICKSTEP-70
URL: https://issues.apache.org/jira/browse/QUICKSTEP-70
Project: Apache Quickstep
Issue Type: Improvement
Components: Query Optimizer, Relational Operators, Storage
Reporter: Jianqiao Zhu
Assignee: Jianqiao Zhu
This PR implements CollisionFreeVectorTable to support specialized high-performance aggregation.
That is, when the group-by attribute is a range-bounded single attribute of int or long type. We can use a vector of type std::vector<std::atomic<StateT>> to store the aggregation states, where StateT is the aggregation state type (currently restricted to long and double). Then during aggregation, for each tuple, we locate the aggregation state with the group-by key's value as index to the state vector, and concurrently update the state with C++'s atomic primitives.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)