发现hive表的目录下有很多大小为0的文件,怀疑可能是数据偏移或者reduce生成过多造成的。简单的解决方法是跑hive脚本前设置mapred.reduce.tasks=1试试。
如果解决不了或者找不到原因,还是要试着清除这些文件在hdfs上。长期存在可能影响集群读写性能。
命令如下,清理目录和文件前缀就自己自定义了:
hadoop fs -lsr /user/hive/warehouse/ | grep part- | awk '{ if ($5 == 0) print $8 }' | xargs hadoop fs -rm