我正在使用Hadoop 2.2.0版本。我想看看“FSIMAGE”和“EDITS”文件的内容。我用了以下命令:
bin / hdfs oiv -i fsimage -o fsimage.txt
bin / hdfs oev -i edits -o edits.xml
我从Aapche hadoop site documentation了解了这些命令。我运行了示例字计数程序,在此之后尝试了上面的命令,得到了这个: -
rushi@ubuntu:/usr/local/hadoop$ bin/hdfs oiv -i fsimage -o fsimage.xml -p XML
Exception in thread "main" java.lang.NullPointerException
at org.apache.hadoop.hdfs.tools.offlineImageViewer.OfflineImageViewer.go(OfflineImageViewer.java:140)
at org.apache.hadoop.hdfs.tools.offlineImageViewer.OfflineImageViewer.main(OfflineImageViewer.java:260)
创建了“fsimage.xml”文件,但它是EMPTY。
可能是什么问题或如何查看这些文件的内容?
答案 0 :(得分:1)
就像你当前的工作目标是/ usr / local / hadoop。我怀疑文件fsimage在direcotry中不存在,而oiv类无法找到它。
> [root@hdm1 current]# hdfs oiv -i fsimage -o /tmp/a Exception in thread
> "main" java.lang.NullPointerException at
> org.apache.hadoop.hdfs.tools.offlineImageViewer.OfflineImageViewer.go(OfflineImageViewer.java:140)
> at
> org.apache.hadoop.hdfs.tools.offlineImageViewer.OfflineImageViewer.main(OfflineImageViewer.java:260)
使用FSIMAGE文件的完整路径的示例
> [root@hdm1 current]# hdfs oiv -i /data/nn/dfs/name/current/fsimage_0000000000000002415 -o
> /tmp/fsimage.txt
> [root@hdm1 current]#