[ https://issues.apache.org/jira/browse/HIVE-931?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
He Yongqiang updated HIVE-931: ------------------------------ Attachment: hive-931-2009-12-03.patch Attached a new patch. Had a lot of offline discussions with Namit. Thanks Namit! Finally, we changed to rule to, we will transform a group by to a sort based group by when 1) If a table's sort columns are empty, and buckets columns contains and only contains all group by columns (order does not matter). or 2) If a table's sort columns are not empty, group by columns are a prefix subset of sort columns. For example, if sorted by a,b,c, group by a, a,b b,a a,b,c b,a,c .. are all ok. > Sorted Group By > --------------- > > Key: HIVE-931 > URL: https://issues.apache.org/jira/browse/HIVE-931 > Project: Hadoop Hive > Issue Type: New Feature > Components: Query Processor > Reporter: Namit Jain > Assignee: He Yongqiang > Fix For: 0.5.0 > > Attachments: hive-931-2009-11-18.patch, hive-931-2009-11-19.patch, > hive-931-2009-11-20.3.patch, hive-931-2009-11-21.patch, > hive-931-2009-12-01.patch, hive-931-2009-12-03.patch > > > If the table is sorted by a given key, we don't use that for group by. That > can be very useful. > For eg: if T is sorted by column c1, > For select c1, aggr() from T group by c1 > we always use a single map-reduce job. No hash table is needed on the mapper, > since the data is sorted by c1 anyway. > This will reduce the memory pressure on the mapper and also remove overhead > of maintaining the hash table. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.