Michal Nowakiewicz created ARROW-12725:
------------------------------------------

             Summary: [C++][Compute] GroupBy: improve performance by encoding 
keys in row format only when they are inserted into hash table
                 Key: ARROW-12725
                 URL: https://issues.apache.org/jira/browse/ARROW-12725
             Project: Apache Arrow
          Issue Type: Improvement
          Components: C++
    Affects Versions: 4.0.0
            Reporter: Michal Nowakiewicz
             Fix For: 5.0.0


Previous implementation of hash group by converts input ExecBatches to 
row-oriented format,
then hashes and compares rows as if they were a single column. 
It is more efficient (especially for small number of key columns) to avoid 
relatively costly 
encoding and instead compute hashes of individual columns in column-oriented 
format mixing them together, and similarly comparing column-oriented data to 
row-oriented data in the hash table without converting. 
Encoding only happens for a subset of input rows that are inserted into the 
hash table - they introduce new groups. 
Keys in hash table remain stored as row-oriented.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to