You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Hudson (Commented) (JIRA)" <ji...@apache.org> on 2012/01/04 00:42:41 UTC

[jira] [Commented] (HIVE-2621) Allow multiple group bys with the same input data and spray keys to be run on the same reducer.

    [ https://issues.apache.org/jira/browse/HIVE-2621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13179136#comment-13179136 ] 

Hudson commented on HIVE-2621:
------------------------------

Integrated in Hive-trunk-h0.21 #1182 (See [https://builds.apache.org/job/Hive-trunk-h0.21/1182/])
    HIVE-2621:Allow multiple group bys with the same input data and spray keys to be run on the same reducer. (Kevin via He Yongqiang)

heyongqiang : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1226903
Files : 
* /hive/trunk/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
* /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
* /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/ExprNodeDesc.java
* /hive/trunk/ql/src/test/queries/clientpositive/groupby10.q
* /hive/trunk/ql/src/test/queries/clientpositive/groupby7_map.q
* /hive/trunk/ql/src/test/queries/clientpositive/groupby7_map_multi_single_reducer.q
* /hive/trunk/ql/src/test/queries/clientpositive/groupby7_noskew.q
* /hive/trunk/ql/src/test/queries/clientpositive/groupby7_noskew_multi_single_reducer.q
* /hive/trunk/ql/src/test/queries/clientpositive/groupby8.q
* /hive/trunk/ql/src/test/queries/clientpositive/groupby9.q
* /hive/trunk/ql/src/test/queries/clientpositive/groupby_complex_types_multi_single_reducer.q
* /hive/trunk/ql/src/test/queries/clientpositive/groupby_multi_single_reducer.q
* /hive/trunk/ql/src/test/queries/clientpositive/multigroupby_singlemr.q
* /hive/trunk/ql/src/test/results/clientpositive/groupby10.q.out
* /hive/trunk/ql/src/test/results/clientpositive/groupby7_map_multi_single_reducer.q.out
* /hive/trunk/ql/src/test/results/clientpositive/groupby7_noskew_multi_single_reducer.q.out
* /hive/trunk/ql/src/test/results/clientpositive/groupby8.q.out
* /hive/trunk/ql/src/test/results/clientpositive/groupby9.q.out
* /hive/trunk/ql/src/test/results/clientpositive/groupby_complex_types_multi_single_reducer.q.out
* /hive/trunk/ql/src/test/results/clientpositive/groupby_multi_single_reducer.q.out
* /hive/trunk/ql/src/test/results/clientpositive/multi_insert.q.out
* /hive/trunk/ql/src/test/results/clientpositive/multigroupby_singlemr.q.out
* /hive/trunk/ql/src/test/results/clientpositive/parallel.q.out

                
> Allow multiple group bys with the same input data and spray keys to be run on the same reducer.
> -----------------------------------------------------------------------------------------------
>
>                 Key: HIVE-2621
>                 URL: https://issues.apache.org/jira/browse/HIVE-2621
>             Project: Hive
>          Issue Type: New Feature
>            Reporter: Kevin Wilfong
>            Assignee: Kevin Wilfong
>         Attachments: HIVE-2621.1.patch.txt, HIVE-2621.D567.1.patch, HIVE-2621.D567.2.patch, HIVE-2621.D567.3.patch, HIVE-2621.D567.4.patch
>
>
> Currently, when a user runs a query, such as a multi-insert, where each insertion subclause consists of a simple query followed by a group by, the group bys for each clause are run on a separate reducer.  This requires writing the data for each group by clause to an intermediate file, and then reading it back.  This uses a significant amount of the total CPU consumed by the query for an otherwise simple query.
> If the subclauses are grouped by their distinct expressions and group by keys, with all of the group by expressions for a group of subclauses run on a single reducer, this would reduce the amount of reading/writing to intermediate files for some queries.
> To do this, for each group of subclauses, in the mapper we would execute a the filters for each subclause 'or'd together (provided each subclause has a filter) followed by a reduce sink.  In the reducer, the child operators would be each subclauses filter followed by the group by and any subsequent operations.
> Note that this would require turning off map aggregation, so we would need to make using this type of plan configurable.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira