Hive的4个BY排序和实际应用中的使用
- Order BY 全局排序,生产环境基本不用,数据量太大
-
Sort BY 分区内排序
-
Distrbute By 类似MR中Partition,进行分区
生产环境sort by 和distrbute by 组合用的多 - Cluster By 当Distribute by和Sorts by字段相同时,可以使用Cluster by方式。Cluster by除了具有Distribute by的功能外还兼具Sort by的功能。但是排序只能是升序排序,不能指定排序规则为ASC或者DESC。实际生产环境用的少,2、3基本能代替。
//cluster by
hive>select * from store cluster by merid;
//distribute by,sort by
hive>select * from store distribute by merid sort by merid asc;

本文介绍了Hive中的四种排序方法:OrderBY、SortBY、DistributeBy及ClusterBy,并详细解释了它们的区别与应用场景。OrderBY适用于小数据量的全局排序;SortBY用于分区内排序;DistributeBy类似于MapReduce中的分区;ClusterBy则结合了DistributeBy和SortBY的功能,但只支持升序排列。

7548

被折叠的 条评论
为什么被折叠?



