hive 数据加载

20190905


1、从本地导入hive

load data [local] inpath 'filepath' [overwrite] into table table_name [partition(part1=val1)]

说明:

  • Load
    操作只是单纯的复制/移动操作,将数据文件移动到 Hive 表对应的位置
  • filepath:
    相对路径,例如:project/data1
    绝对路径,例如:/user/hive/project/data1
    包含模式的完整 URI,如:hdfs://namenode:9000/user/hive/project/data1
  • local 关键字
    如果指定了localload命令会去查找本地文件系统中的filepath。如果没有指定local关键字,则根据inpath中的uri查找文件
  • overwrite关键字
    如果使用了overwrite关键字,则目标表(或者分区)中的内容会被删除,然后再将filepath指向的文件/目录中的内容添加到表/分区中。
    如果目标表(分区)已经有一个文件,并且文件名和 filepath 中的文件名冲突,那么现有的文件会被新文件所替代。

2、从HDFS中导入数据

--1.将文件上传到:HDFS的data目录下面
hadoop fs -put load_data_hdfs.txt /data
--2.在Hive中执行命令
load data inpath 'data/load_data_hdfs.txt' into table load_data_hdfs;

3、从其他的Hive表中导入数据

insert into table load_data_local2 select * from load_data_local;

4、创建表的同时导入数据

create table load_data_local3 as select * from load_data_local;

参考

博客园-参考1
CSDN-参考2

posted on 2019-10-15 09:29  呼呼小睡  阅读(291)  评论(0编辑  收藏  举报