Hive导入导出数据

Hive导入导出数据mysql

hive导入数据的几种方式sql

1. 加载本地文件到Hive表app

load data local inpath 'path/file' into table 表名称 ;

2. 加载HDFS文件到Hive表工具

load data inpath 'path/file' into table 表名称 ;

3. 加载数据覆盖表中已有的数据oop

load data local inpath 'path/file' overwrite into table 表名称 ;

4. 建立表时经过select加载( 也能够换位某几个字段,建立时直接导入数据)*code

create table emp_as as select * from emp ;

5. 用insert命令加载(先要建立好表,而后再写入数据)orm

应用场景:把用select命令分析的结果写入某个临时表
注意:导入的数据的表的列数和列的类型要保持一致
insert into table 表名 select * from emp ;
insert overwrite table 表名 select * from emp ;
           append 追加写入   --默认
       overwrite 覆盖写入	--使用最多(没有into)

6. 建立表的时候经过location指定加载it

create table 表名(
……
)
partitioned by 		--注意顺序
row format ..
location "" ;

hive导出数据的方式io

1. insert..local directory导出到本地table

insert overwrite local diretory "path/" select ....
> insert overwrite local directory '/opt/modules/mydata'
> row format delimited fields terminated by '\t' 
> select * from student;

2. insert..directory导出到HDFS(注意没有分割的那一句,默认是空格分割)

insert overwrite directory "path/" select * from emp ;

3. hive -e把查询结果导出到一个指定文件

bin/hive -e 'select * from student'>tab.txt

4. sqoop工具

Hive表数据 --> mysql表
相关文章
相关标签/搜索