Hive数据导出详解

一、数据导出是什么?

hive是一个依赖Hadoop集群的数据处理平台,我们不仅需要对数据进行筛选处理,更需要进行导出,供我们多次重复使用。

二、六大帮派

1.insert

insert有两种形式,加local上传到本地路径,不加local上传到集群

代码如下(示例):

insert加local

insert overwrite local directory '/root/export/data/student' select * from student;

insert不加local(并将数据格式化)
insert overwrite directory '/student' row format delimited fields terminated by ',' select * from student;

Hive数据导出详解_第1张图片

Hive数据导出详解_第2张图片

2.Hadoop命令导出到本地

代码如下(示例):

hadoop dfs -get /user/hive/warehouse/hive.db/student/student.txt /root/export/data/student/

3.Hive shell命令导出

一个 > 是覆盖,两个>是追加

代码如下(示例):

bin/hive -e 'select * from hive.student' >> /root/export/data/student/student.txt

4.export导出到HDFS上

当该hdfs路径下有文件时或表存在,都不可导,与import连用。

代码如下(示例):

export table hive.student to '/user/hive/warehouse/hive.db/student';

5.Sqoop导出

将数据导出到window系统的mysql,并进行可视化操作

6.清除表中的数据(Truncate)——删库跑路

Truncate只能删除管理表,不能删除外部表的数据(但可以将外部表转为内部表哦,嘿嘿嘿)只是删除内部表的hdfs数据,元数据还在

内部转为外部表
alter table student set tblproperties('EXTERNAL'='TRUE')一定大写

截断表
Truncate table student; 

总结

六大派别与五大帮派共同统治着数码武林,侠义精神深入人心,hive语句妇孺皆知。街头小巷上谈论着他们的英雄事迹,再一次掀起了学习hive秘籍的狂潮。或许现在人们学习的已经不再是傍身之计,更多的是对天下武功,为快不灭的热爱。有人的地方就会就有江湖,大数据时代亦是如此。

到此这篇关于Hive数据导出详解的文章就介绍到这了,更多相关Hive数据导出内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(Hive数据导出详解)