文章标题

Sparksql查询hive分区表出现

java.io.IOException: Not a file: hdfs://ns/data/hjpt/itf/14thplatform/qchat/month/active_user
错误。
今天在sparksql中查询hive的分区表的时候,
select * from itf_qchat_active_user_m where month_id = ‘201701’ limit 10;
结果出现错误,
17/06/15 14:52:50 ERROR SparkSQLDriver: Failed in [select * from itf_qchat_active_user_m limit 10]
java.io.IOException: Not a file: hdfs://ns/data/hjpt/itf/14thplatform/qchat/month/active_user

但是hadoop 中的确存在201701这个文件夹,通过hadoop 命令可以认证。
同时,查询其他分区表没有错误,而且hive查询没有问题
那么可以确定,问题出现在这个表中。后来,让创建这个表的工作人员查看,原来在这个表还有一个201702的分区,这个分区是空的,没有对应的hdfs目录,从而导致201701的分区查询错误。后来,删除这个分区
alter table itf_qchat_active_user_m drop partition (month_id=’201702’)后,查询正常。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值