Hive中order by、sort by、distribute by、cluster by的区别

来源:互联网 发布:ubuntu看存储空间 编辑:程序博客网 时间:2024/06/05 17:27

--------Hive的底层是MapReduce--------

order by:对全局数据的一个排序,仅仅只有一个reduce。


sort  by :有多个reduce,对每一个reduce内部数据进行排序,全局结果集没有排序 。

设置reduce的个数:set  mapreduce.job.reduces=[number]


distribute by :类似于MapReduce中partition的功能,对数据进行分区,结合sort by进行使用。但是必须要在sort by之前,因为要先分区,再排序。


cluster by: sort by  和distribute  by的结合,当sort by和distribute by字段相同时使用  cluster  by 。

阅读全文
2 0
原创粉丝点击