当前位置:   article > 正文

hive 分区表_Spark读取Hive分区表的问题

spark读取hive分区配置错误

最近在对公司集群的数据进行进一步的整理和归类,在进行数据整合的时候发现Spark读取hive分区表的时候出现了一点问题,会出现org.apache.hadoop.mapred.InvalidInputException: Input path does not exist

f2f3db8d274c0f72a35d8e8490735d93.png

使用Hue查询hive数据

1defc1ff6a39dd8d1e93848332138bf5.png

考虑难道Zeppelin上面读取hive分区是有问题的?难不成hive库谁动了?根据这个错误提示去找问题,既然这个数据不存在那就找找相对应库里面所有的分区表吧,那么既然不存在为何查看tables的时候却有233个分区,是因为数据丢失或删除的时候没有做 alter table table_name drop partition (d>='XXXX')

9693d7db5d9cd0aa00c96ed32b4f7a9f.png

801ceeb8026edcbc5063503cb8a64ed0.png

既然问题知道什么原因,那就动手吧,两个思路:第一,Spark读取Hive数据的时候添加分区条件进行读取的过滤,第二,那这个不存在的分区全部删除。由于分区时间是连续的我采用 alter table table_name drop partition (d>='2020-02-15',d<='2020-07-20')的方式删除不存在的分区。

再次使用Spark去读取hive数据

9eb3725bdefb21bbdf19d2cd6e5be3ac.png

但是还是有个问题就是在Hue中查看Tables里面的分区的时候这些分区还在,更新元数据以后还是没有用,那剩下的只能手动删除了ee0bbc7a63f2a4130ca014bc36e5b744.png

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/酷酷是懒虫/article/detail/736430
推荐阅读
相关标签
  

闽ICP备14008679号