diff options
author | Qifan Pu <qifan.pu@gmail.com> | 2016-07-26 18:08:07 -0700 |
---|---|---|
committer | Reynold Xin <rxin@databricks.com> | 2016-07-26 18:08:07 -0700 |
commit | 738b4cc548ca48c010b682b8bc19a2f7e1947cfe (patch) | |
tree | 5657375849a1d8e483e4775891770ba8ff7f8dd7 /sql/hive/src/test/resources/sqlgen/type_widening.sql | |
parent | 0b71d9ae0804b0394e4abd02c7cebf52a9102216 (diff) | |
download | spark-738b4cc548ca48c010b682b8bc19a2f7e1947cfe.tar.gz spark-738b4cc548ca48c010b682b8bc19a2f7e1947cfe.tar.bz2 spark-738b4cc548ca48c010b682b8bc19a2f7e1947cfe.zip |
[SPARK-16524][SQL] Add RowBatch and RowBasedHashMapGenerator
## What changes were proposed in this pull request?
This PR is the first step for the following feature:
For hash aggregation in Spark SQL, we use a fast aggregation hashmap to act as a "cache" in order to boost aggregation performance. Previously, the hashmap is backed by a `ColumnarBatch`. This has performance issues when we have wide schema for the aggregation table (large number of key fields or value fields).
In this JIRA, we support another implementation of fast hashmap, which is backed by a `RowBasedKeyValueBatch`. We then automatically pick between the two implementations based on certain knobs.
In this first-step PR, implementations for `RowBasedKeyValueBatch` and `RowBasedHashMapGenerator` are added.
## How was this patch tested?
Unit tests: `RowBasedKeyValueBatchSuite`
Author: Qifan Pu <qifan.pu@gmail.com>
Closes #14349 from ooq/SPARK-16524.
Diffstat (limited to 'sql/hive/src/test/resources/sqlgen/type_widening.sql')
0 files changed, 0 insertions, 0 deletions