[ https://issues.apache.org/jira/browse/HIVE-17043?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16622990#comment-16622990 ]
Jesus Camacho Rodriguez commented on HIVE-17043: ------------------------------------------------ [~vgarg], I had a quick look at the patch. I believe we should not have different behavior for method in {{RelMdUniqueKeys}}, this may be misleading moving forward. Instead of changing the semantics of {{RelMdUniqueKeys}} method, which currently is inferred from stats and only used to get the row count, we could determine uniqueness using {{RelMdColumnUniqueness}}. If I remember correctly, {{RelMdColumnUniqueness}} is the metadata provider used by other Calcite optimizations when they need to infer whether a set of columns contains unique values or not with guarantees, i.e., not from stats that may be imprecise. > Remove non unique columns from group by keys if not referenced later > -------------------------------------------------------------------- > > Key: HIVE-17043 > URL: https://issues.apache.org/jira/browse/HIVE-17043 > Project: Hive > Issue Type: Sub-task > Components: Logical Optimizer > Affects Versions: 3.0.0 > Reporter: Ashutosh Chauhan > Assignee: Vineet Garg > Priority: Major > Attachments: HIVE-17043.1.patch, HIVE-17043.2.patch, > HIVE-17043.3.patch, HIVE-17043.4.patch > > > Group by keys may be a mix of unique (or primary) keys and regular columns. > In such cases presence of regular column won't alter cardinality of groups. > So, if regular columns are not referenced later, they can be dropped from > group by keys. Depending on operator tree may result in those columns not > being read at all from disk in best case. In worst case, we will avoid > shuffling and sorting regular columns from mapper to reducer, which still > could be substantial CPU and network savings. -- This message was sent by Atlassian JIRA (v7.6.3#76005)