大数据开发之Hive篇----使用外部分区表时要注意的事情

直接将数据put到HDFS上,Hive的查询变化

当我们已经使用Hive建立好了一个表的时候,使用desc formatted table_name;可以直接查看到这个表的具体location,如果我们将文件直接放到这个地址上面去,我们在Hive上面理论上面可以直接查询到增加的结果的。
假设我现在Hive上创建了一张外部表

create external table person(id int,name string,age int) partitioned by(create_time string) row format delimited fields terminated by ',' location '/user/table/person';

接着我们在HDFS上导入了这个表在20190321时间的数据

hdfs dfs -mkdir -p /user/table/person/create_time=20190321
hdfs dfs -put /home/test/data/person.dat /user/table/person/create_time=20190321

这个时候你如果直接进行查询是没有办法查询到你添加上去的数据的,我们还需要多一步在Hive上的操作

alter table person add partition(create_time='20190321') location '/home/test/data/person.dat /user/table/person/create_time=20190321';

这里一定要记住要指定你添加数据的那个分区目录在哪里。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值