Hive学习之数据加载

#Hive数据加载

LOAD DATA LOCAL INPATH  'test_data'
[OVERWRITE] INTO TABLE test PARTITION(day='20191005');

但有时数据文件很大,需要将大文件分解

split -a 2 -d -l 1000000 test_data test_data_split_

会得到几个以“test_data_split_”开头的文件。其中“-a 2 d” 表示后缀是两位的整数,“-l 1000000” 表示以每1000000行分隔文件,比如得到
test_data_split_00等等
这时我们需要一个一个加载(好麻烦,暂时没找到快捷方式)

LOAD DATA LOCAL INPATH  'test_data_split_00'
INTO TABLE test PARTITION(day='20191005');

注意,不要加“OVERWRITE”,当然,手欠,加了几次,发现可以找回的

查看最近一次删除的文件
hadoop fs -ls /user/hadoop/.Trash/Current/user/hive/warehouse/myhive.db/file_folder
下载到当前路径
hadoop fs -get /user/hadoop/.Trash/Current/user/hive/warehouse/myhive.db/file_folder

如果不想使用直接hive,我们可以间接地通过hadoop fs shell命令实现(当前路径的文件)数据加载,注意这里的数据应符合HDFS文件要求,一般是“|”分隔,至于“,”是否可行,可以一试。

hadoop fs -put filename /user/hive/warehouse/myhive.db/test/

不同的是,这里的“filename” 可以是多个。
更多hadoop fs shell 可参考官方文档。
中文版hadoop 1.0.4
英文版hadoop 2.7.7
。。。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值