hdfs的元数据管理
Posted 大数据入门到入土
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hdfs的元数据管理相关的知识,希望对你有一定的参考价值。
可以在hdfs-size.xml里指定secondarynamenode节点位置
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop02:50090</value>
</property>
当记录的条数达到100w条或者时间达到3600s提示namenode进行checkpoint
edit_inpogress停止记录,将记录拷贝到edits_00000n里
将edits_00000n拷贝到secondarynamenode,将fsimage拷贝到secondarynamenode(如果secondarynamenode没有启动,那么此步骤由namenode执行)
内存将edits与fsimage的内容进行整合,得到新的fsimage
把新的fsimage传给namenode checkpoint完成
1.sn提醒nn做checkpoint
2.nn上的edit_inprogress文件滚动生成edit_sum文件
3.将edit_sum文件传给sn
4.sn更新fsimage文件
5.sn将文件写入磁盘
6.将文件传给nn
作用讲解:
edit:NameNode在本地操作hdfs系统的文件都会保存在Edits日志文件中。也就是说当文件系统中的任何元数据产生操作时,都会记录在Edits日志文件中(增删改查)
fsimage:存放的是一份最完整的元数据信息,内容比较大
edit一直记录元数据操作记录的话,也会慢慢膨胀的比较大,也会造成操作起来比较困难
为了控制edits不会膨胀太大,引入secondaryNameNode机制。
ss主要作用合并edits和fsimage文件,清空edit
磁盘元数据文件包括以下四个
fsimage:元数据镜像文件。
edits:日志文件。
fstime:保存最近一次Checkpoint的时间。
VERSION:标志性文件,最后被创建,它的存在表明前三个元数据文件的创建成功。
fsimage是HDFS文件系统存于硬盘中的元数据检查点,里面记录了自最后一次检查点之前HDFS文件系统中所有目录和文件的序列化信息;而edits保存了自最后一次检查点之后所有针对HDFS文件系统的操作,比如:增加文件、重命名文件、删除目录等等。
以上是关于hdfs的元数据管理的主要内容,如果未能解决你的问题,请参考以下文章