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

Edward Capriolo commented on HIVE-4002:
---------------------------------------

This is a nice feature. There are times when I know that count(distinct(col)) 
and other operations like the one you have requested produce small result sets 
and the shuffle is the bottleneck. I do like this feature but turning it on 
manually is cumbersome for the end user.

I wonder if we can convert the last step at runtime somehow.(Probably not 
easily but that would be nice)
                
> Fetch task aggregation for simple group by query
> ------------------------------------------------
>
>                 Key: HIVE-4002
>                 URL: https://issues.apache.org/jira/browse/HIVE-4002
>             Project: Hive
>          Issue Type: Improvement
>          Components: Query Processor
>            Reporter: Navis
>            Assignee: Navis
>            Priority: Minor
>         Attachments: HIVE-4002.D8739.1.patch
>
>
> Aggregation queries with no group-by clause (for example, select count(*) 
> from src) executes final aggregation in single reduce task. But it's too 
> small even for single reducer because the most of UDAF generates just single 
> row for map aggregation. If final fetch task can aggregate outputs from map 
> tasks, shuffling time can be removed.
> This optimization transforms operator tree something like,
> TS-FIL-SEL-GBY1-RS-GBY2-SEL-FS + FETCH-TASK
> into 
> TS-FIL-SEL-GBY1-FS + FETCH-TASK(GBY2-SEL-LS)
> With the patch, time taken for auto_join_filters.q test reduced to 6 min (10 
> min, before).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to