Hive表数据导入导出的不同方式和自定义列分隔符

数据来源

hive> select * from test1;
OK
Tom             24.0    NanJing Nanjing University
Jack            29.0    NanJing Southeast China University
Mary Kake       21.0    SuZhou  Suzhou University
John Doe        24.0    YangZhou YangZhou University
Bill King       23.0    XuZhou  Xuzhou Normal University
Time taken: 0.064 seconds, Fetched: 5 row(s)


***************
数据来源:from:niityzu(站点:https://blog.csdn.net/NIITYZU/article/details/42238483)
***************

一,hive表数据导出的四种方式

  1. 导出数据至本地文件系统
    hive> insert overwrite local directory "/home/hadoopUser/data" select name,age,address from test1;
    

     

  2. 导出数据至分布式文件系统
    hive> insert overwrite  directory "/output" select name,age,address from test1;
    

     

  3. 将表中数据导出到另一张表
    通过查询语句想表中插入数据,从而实现数据从一个表导出到另外一张表中。

     

  4. hive -e/-f 参数的使用及数据导出

二,hive表中数据导入的五种方式

  1. 本地文件系统导入
  2. 从hdfs文件系统导入
  3. 通过查询语句向表中插入数据
  4. 分区插入
    1. 静态分区插入
    2. 动态分区插入
  5. 单个查询语句中创建表并加装数据
来源:niityzu
站点:https://blog.csdn.net/niityzu/article/details/42234741
     https://blog.csdn.net/NIITYZU/article/details/42238483

三,自定义输出列分隔符

    默认情况下,hive表导出的列分隔符是^A作为列的分隔符,但是此分隔符显示的不直观,为此hive可以指定列分隔符,以上表为例导出hive表中数据以“\t”为分隔符。

hive> insert overwrite local directory "/home/hadoopUser/data"
    > row format delimited
    > fields terminated by '\t'
    > select * from test1;

查看结果:

Tom             24.0    NanJing Nanjing University
Jack            29.0    NanJing Southeast China University
Mary Kake       21.0    SuZhou  Suzhou University
John Doe        24.0    YangZhou        YangZhou University
Bill King       23.0    XuZhou  Xuzhou Normal University

 

你可能感兴趣的:(Hive)