零.Hive导出数据的方式有三种
分别为
(1)导出到本地文件系统;
(2)导出到HDFS中;
(3)导出到Hive的另一个表中。
一 导出到本地文件系统
hive> INSERT OVERWRITE LOCAL DIRECTORY '/home/santiago/data/hive_data'
> SELECT * FROM test;
santiago@slave1:~/data/hive_data$ ls
000000_0
santiago@slave1:~/data/hive_data$ vim 000000_0
9^ANermaer
31^AJiaJia
10^AMessi
16^ASanti
6^ATian
21^APirlo ^A是字符分割,ascii码是\00001
二.导出到HDFS系统
hive> INSERT OVERWRITE DIRECTORY '/hdfs/test'
> SELECT * FROM test;
注意:比存储在本地文件系统少一个Local
santiago@slave1:~$ hadoop fs -ls /hdfs/test
-rwxr-xr-x 2 santiago supergroup 54 2017-04-06 11:34
/hdfs/test/000000_0
santiago@slave1:~$ hadoop fs -cat /hdfs/test/000000_0
9Nermaer
31JiaJia
10Messi
16Santi
6Tian
21Pirlo
三.导出到另外一个表
hive> SELECT * FROM dataload;
9
31
10
16
6
hive> INSERT INTO TABLE dataload
> SELECT age
> FROM test_name;
hive> SELECT * FROM dataload;
9
31
10
16
6
21
26
26
99