Fsimage与Edits
Fsimage与Edits概念
nameNode在被格式化后会生成四个文件。如下图:
- Fsimage:hdfs文件系统元数据的永久检查点,包括hdfs文件系统的所有目录和文件iNode的序列化信息
- Edits:存放hdfs文件系统的所有更新操作路径,文件系统客户端执行的所有写操作首先会记录在edits文件中
- seen_txid:保存的edits_inprogress_后的数字
- 每次NameNode启动时,都会将fsimage文件读入内存,加载edits里的更新操作,保证内存中的元数据是最新的、同步的,可以当做namenode启动时将fsimage和edits合并了
oiv查看Fsimage文件
基本语法:
hdfs oiv -p 文件类型 -i 镜像文件 -o 转换后文件输出路径
栗子:
hdfs oiv -p XML -i fsimage_0000000000000000002 -o fsimage.xml
如下图:
集群启动后,要求datanode上报数据块信息,并间隔一段时间后再次上报。一般在格式化datanode启动namenode后,过段时间才会显示datanode信息
oev查看Edits文件
基本语法:
hdfs oev -p 文件类型 -i 编辑日志 -p 输出文件
栗子:
hdfs oev -p XML -i edits_0000000000000000001-0000000000000000002 -o edits.xml
如下图:
CheckPoint时间设置
- 默认状况,secondaryNameNode每隔一个小时执行一次
2.一分钟检查一次操作次数,当操作次数达到100w次时,SecondaryNameNode执行一次。