hdfs深入:04、hdfs当中的元数据管理以及元数据节的查看

6、HDFS的元数据信息FSimage以及edits和secondaryNN的作用

fsimage:存放的是一份最完整的元数据信息,内容比较大
edits:元数据操作日志,记录了一段时间的元数据信息的变化,例如增删改查哪些文件,文件内容比较小,操作起来比较方便
edits一直记录元数据操作记录的话,也会慢慢膨胀的比较大,也会造成操作起来比较困难
为了控制edits不会膨胀太大,引入secondaryNameNode机制。
secondaryNameNode:主要职责,合并fsimage与edits,清空edits,
问题:edits什么时候跟fsimage合并??? 控制策略:时间长短 + 文件大小 比如说我们可以定义两个小时,或者edits文件大小达到1GB的时候合并一次。

通过hdfs-site.xml当中的配置文件进行指定:

<!-- 定义了我们fsimage文件存储的路径。实际工作当中,这个路径不能随便写,需要首先确定我们的磁盘的挂载路径
df -lh 查看我们磁盘的挂载路径 -->

<property>
  <name>dfs.namenode.name.dir</name>
  <value>file:///export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/namenodeDatas</value>
</property>

<!-- 定义edits文件的存储路径  -->

<property>
<name>dfs.namenode.edits.dir</name>
<value>file:///export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/dfs/nn/edits</value>
</property>

6.2、FSimage、edits文件当中的文件信息查看

cd  /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/namenodeDatas/current

hdfs oiv -i fsimage_0000000000000000864 -p XML -o hello.xml

cd  /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopDatas/dfs/nn/edits

hdfs oev -i  edits_0000000000000000865-0000000000000000866[a1]  -o myedit.xml -p XML

猜你喜欢

转载自www.cnblogs.com/mediocreWorld/p/10946427.html