背景
在使用impala往表的新分区写数据时报错
NoSuchMethodError: org.apache.hadoop.hive.metastore.MetaStoreUtils.updatePartitionStatsFast(Lorg/apache/hadoop/hive/metastore/api/Partition;Lorg/apache/hadoop/hive/metastore/Warehouse;)Z
原因
impala与hive版本问题。应该是impala解析SQL的时候用到的是上面这个函数,而HIVE本身解析的时候用的不是该函数且该版本hive没有该函数,导致impala找不到执行函数,发生报错。
方案
之前都是用HIVE写入新分区
insert overwrite xxx.xxx partition(xxx = '20190109')
这样会自动创建20190109的分区目录,然后把数据写入进去,但是impala不能这样操作,需要先新建分区,再插入数据

在使用Impala向表的新分区写入数据时遇到错误,原因是Impala与Hive的版本不兼容。Impala在解析SQL时尝试调用Hive中不存在的`MetaStoreUtils.updatePartitionStatsFast`函数,导致运行时异常。解决方案是通过先在Hive中创建分区,然后再将数据插入到Impala中,避免直接用Impala操作新分区。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



