Fsimage与Edits是什么?

  • Fsimage记录文件系统的镜像或快照(周期性记录)(此文件较小)
  • Edits 记录客户端对进行的所有的增,删,改,追加等操作(没有使用SecondaryNameNode之前,不是周期性的)(此文件相对较大)
  • Fsimage Edits作用:用于还原集群上次关闭时的状态,还原将两个文件加载到内存,检查,合并最终生成一个新的Fsimage,原本的Edits失效

查看Fsimage和Edits文件

文件在哪?

在配置文件中hdfs-site.xml中有记录
dfs.namenode.name.dir 是Fsimage的存放路径
dfs.namenode.edits.dir Edits日志的存放路径

  • 查看一下hdfs.site.xml文件
进入到hadoop的安装路径/etc/hadoop/hdfs.site.xml

图解: HDFS的Fsimage与Edits_big data

  • 进入到目录中,找到文件
cd /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/namenodeDatas
cd current

图解: HDFS的Fsimage与Edits_hdfs_02

  • 文件是不能直接查看的,我们要先转化为XML文件,下载到本地,然后才可以查看
  • 1.转化文件格式
hdfs oiv -i fsimage_0000000000000001024 -p XML -o test001.xml

图解: HDFS的Fsimage与Edits_hdfs_03

  • 下载到本地
sz test001.xml

图解: HDFS的Fsimage与Edits_big data_04

  • 我把他下载到了本地
    图解: HDFS的Fsimage与Edits_big data_05
  • 打开看看
    图解: HDFS的Fsimage与Edits_big data_06
  • 再来看看Edits文件
cd /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/dfs/nn/edits
cd current

图解: HDFS的Fsimage与Edits_big data_07

  • 转换为xml文件
  • 下载到本地
 hdfs oev -i  edits_0000000000000000011-0000000000000000309 -p XML -o test002.xml

图解: HDFS的Fsimage与Edits_其他_08

sz test002.xml

图解: HDFS的Fsimage与Edits_xml_09

图解: HDFS的Fsimage与Edits_xml_10