暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

从Hive表中导出数据到文件

Java菜鸟 2019-05-15
194

  1. 保存结果到本地

    方法一:通过重定向方式,将查询结果写到指定的文件中

     hive -e "SELECT id,concat_ws(',',collect_set(concat(k1,'-',k2,'-',k3))) from test.users GROUP BY id;" > users.data

    查看

     [root@node00 ~]# cat users.data 
    1 a1-a2-a3,a11-a22-a33,a111-a222-a333
    2 b1-b2-b3,b11-b22-b33

    方法二:使用INSERT OVERWRITE LOCAL DIRECTORY
    保存结果到本地

     hive -e "
    INSERT OVERWRITE LOCAL DIRECTORY '/home/charles/users.data'
    ROW format delimited fields terminated BY '\t'
    SELECT id,concat_ws(',',collect_set(concat(k1,'-',k2,'-',k3))) from test.users GROUP BY id;
    "

    查看

     [root@node00 charles]# ll -a users.data
    total 16
    -rw-r--r-- 1 root root 61 May 9 17:24 000000_0
    -rw-r--r-- 1 root root 12 May 9 17:24 .000000_0.crc
    [root@node00 charles]# cat users.data/000000_0
    1 a1-a2-a3,a11-a22-a33,a111-a222-a333
    2 b1-b2-b3,b11-b22-b33

  2. 保存结果到HDFS中

     hive -e "
    INSERT OVERWRITE DIRECTORY '/users.data'
    ROW format delimited fields terminated BY '\t'
    SELECT id,concat_ws(',',collect_set(concat(k1,'-',k2,'-',k3))) from test.users GROUP BY id;

    "

    查看

     [root@node00 ~]# hdfs dfs -ls users.data
    Found 1 items
    -rwxrwxrwx 3 root supergroup 61 2019-05-09 17:28 users.data/000000_0
    [root@node00 ~]# hdfs dfs -cat users.data/000000_0
    1 a1-a2-a3,a11-a22-a33,a111-a222-a333
    2 b1-b2-b3,b11-b22-b33


文章转载自Java菜鸟,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论