• 044 HIVE中的几种排序


    1、order by:全局排序

      select * from emp order by sal;

      对于一个reduce才有用。



    2、sort by:对于每个reduce进行排序
      set mapreduce.job.reduces=3;

      这里设置了reduce为3。

      

      原本的结果放在控制台上,看的效果不是太清楚,所以将hive的结果到出到本文件。
      insert overwrite local directory '/opt/datas/emp_sort'  row format delimited fields terminated by ' ' select * from emp sort by sal;

      

      结果:

      

    3、distribute by :底层就是mapreduce 的分区,一般与sort by连用

      先按照deptno进行分区,然后sort by每个reduce。
      insert overwrite local directory '/opt/datas/emp_dis' row format delimited fields terminated by ' ' select * from emp distribute by deptno sort by sal;

      

    4、cluster by:等价于distribute by 与sort by的字段相同时

      分区与排序都是一个字段,可以使用这个。

      应该说,这个是上面的一种特殊情况,我感觉可能会用的少一些。

      insert overwrite local directory '/opt/datas/emp_cls'  row format delimited fields terminated by ' '  select * from emp cluster by sal;

      

  • 相关阅读:
    Zookeeper zkCli.sh常用命令
    windows 服务
    Zookeeper的下载安装
    Zookeeper 基础知识
    在Java中使用Redis
    Redis 集群(cluster)
    Redis 哨兵(Sentinel)机制
    Redis 主从复制
    Redis 发布/订阅
    Redis 事务
  • 原文地址:https://www.cnblogs.com/juncaoit/p/6028409.html
Copyright © 2020-2023  润新知