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;