Hadoop的namenode的镜像文件和编辑日志
存储地址:
namenode 被格式化之后,将在/opt/module/hadoop-2.7.2/data/tmp/dfs/name/current 目录中
产生文件名为edits,fsimage,seen_txid,VERSIOn
(1) fsimage文件:HDFS文件系统元数据的一个永久性检查点,包含HDFS文件系统的所有目录和文件idnode的序列化信息
(2)edits文件:存放HDFS文件系统的所有更新操作的路径,文件系统客户端所有的写操作首先会被记录到edits文件中
(3)seen_txid文件保存的是一个数字,即最后一个edits的数字
(4)每次NameNode启动时都会将fsimage文件读入内存,并从0001开始到seen_txid中记录的数字,依次执行每个edits里面更新操作,保证内存中的元数据信息是最新的,同步的,可以看成namenode启动时,将fsimage和edits文件进行合并
clusterID=CID-eafb2e86-7438-4ba7-adc6-0f1c4b14b0b2:集群id,唯一标识
cTime=0:创建时间 基本无意义
storageType=NAME_NODE 存储类型
oiv查看fsimage文件
基本语法:
hdfs oiv -p 文件类型 -i 镜像文件 -o 转换后文件输出路径
将序列化的文件反序列化为xml文件
<inode>
<id>16386</id>
<type>DIRECTORY</type>
<name>user</name>
<mtime>1512722284477</mtime>
<permission>atguigu:supergroup:rwxr-xr-x</permission>
<nsquota>-1</nsquota>
<dsquota>-1</dsquota>
</inode>
<inode>
<id>16387</id>
<type>DIRECTORY</type>
<name>atguigu</name>
<mtime>1512790549080</mtime>
<permission>atguigu:supergroup:rwxr-xr-x</permission>
<nsquota>-1</nsquota>
<dsquota>-1</dsquota>
</inode>
datanode将信息给namenode,fsimage没有存放数据存放的位置,
oev 查看 edits 文件
基本语法
hdfs oev -p 文件类型 -i 编辑日志 -o 转换后文件输出路径
滚动编辑日志
正常情况下HDFS文件系统有更新操作时,就会滚动编辑日志,也会用命令强制滚动编辑日志
- 滚动编辑日志(前提必须启动集群)
- 镜像文件产生
namenode启动时加载镜像文件和编辑日志