Hive创建表|数据的导入|数据导出的几种方式

* Hive创建表的三种方式

1、使用create命令创建一个新表

例如:create table if not exists db_web_data.track_log(字段) 
partitioned by (date string,hour string) 
row format delimited fields terminated by '	';

2、把一张表的某些字段抽取出来,创建成一张新表

例如:create table backup_track_log as select * from db_web_data.track_log;
尖叫提示:会复制属性以及属性值到新的表中

3、复制表结构

例如:create table like_track_log like db_web_data.track_log;
尖叫提示:不会复制属性值,只会复制表结构。

* Hive表导入数据五种方式

1、本地导入

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

2、HDFS导入

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

3、覆盖导入

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

4、查询导入

create table track_log_bak as select * from db_web_data.track_log;

5、insert导入

** 追加-append-默认方式
insert into table 表名 select * from track_log;
** 覆盖-overwrite-显示指定-使用频率高
insert overwrite table 表名 select * from track_log;

* Hive表导出数据四种方式

1、本地导出

例如:insert overwrite local directory "/home/admin/Desktop/1/2" row format delimited fields terminated by '	' select * from db_hive_demo.emp ;
尖叫提示:会递归创建目录

2、HDFS导出

例如:insert overwrite diretory "path/" select * from staff;

3、Bash shell覆盖追加导出

例如:$ bin/hive -e "select * from staff;" > /home/z/backup.log

4、Sqoop

原文地址:https://www.cnblogs.com/alexzhang92/p/10920010.html