Hive return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask.……table could not be cleaned up.
在hive执行INSERT OVERWRITE TABLE的命令时出现如上的错误,截图如下:
经过查找发现,自己错误理解了INSERT INTO TABLE 和 INSERT OVERWRITE TABLE 的区别;
本案例中,我是要对空表追加新的记录,而不是覆盖原有的记录,所以应该将 INSERT OVERWRITE 改成 INSERT INTO,即可避免错误;
【备注:本案例中发生该错误的原因只适用于类似情况,该错误也有可能在其他场景出现,如有不足之处,不吝赐教】
附:INSERT INTO 与 INSERT OVERWRITE 的区别
INSERT INTO 是向表里面追加数据;
INSERT OVERWRITE 则是覆盖表的记录,如果改表是分区表,则只会覆盖所指定的分区数据;