Hive Load装载数据与HDFS的关系

装载数据:LOAD移动数据

LOCAL:指定文件位于本地文件系统 ;OVERWRITE表示覆盖现有数据
使用方法:

-- load数据格式
LOAD DATA LOCAL INPATH '/home/Downloads/employee.txt' 
OVERWRITE INTO TABLE employee;

-- 方式一:LOCAL表示文件位于本地,OVERWRITE表示覆盖现有数据
LOAD DATA LOCAL INPATH '/home/Downloads/employee.txt' 
OVERWRITE INTO TABLE employee_partitioned  PARTITION (year=2014, month=12);

-- 方式二:没有LOCAL,文件位于HDFS文件系统中
LOAD DATA INPATH '/tmp/employee.txt'  
OVERWRITE INTO TABLE employee_partitioned PARTITION (year=2017, month=12);

方式二比方式一快,因为文件已经在HDFS中了,只需改变NameNode上对data的位置映射即可。方式一牵扯到上传文件到DataNode。虽然这些数据都在table的文件夹之下可以找到,但其实在HDFS系统上,在存储位置上,所有的数据还是都存在data的文件夹下。

语句:

 hive> load data [local] inpath '数据的 path' [overwrite] into table student [partition (partcol1=val1,...)];

(1)load data:表示加载数据
(2)local:表示从本地加载数据到 hive 表;否则从 HDFS 加载数据到 hive 表 (3)inpath:表示加载数据的路径 (4)overwrite:表示覆盖表中已有数据,否则表示追加
(5)into table:表示加载到哪张表
(6)student:表示具体的表
(7)partition:表示上传到指定分区

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值