hdfs的元数据管理

Posted 大数据入门到入土

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hdfs的元数据管理相关的知识,希望对你有一定的参考价值。

可以在hdfs-size.xml里指定secondarynamenode节点位置

<property> <name>dfs.namenode.secondary.http-address</name>    <value>hadoop02:50090</value></property>
  1. 当记录的条数达到100w条或者时间达到3600s提示namenode进行checkpoint

  2. edit_inpogress停止记录,将记录拷贝到edits_00000n里

  3. 将edits_00000n拷贝到secondarynamenode,将fsimage拷贝到secondarynamenode(如果secondarynamenode没有启动,那么此步骤由namenode执行)

  4. 内存将edits与fsimage的内容进行整合,得到新的fsimage

  5. 把新的fsimage传给namenode checkpoint完成





1.sn提醒nn做checkpoint2.nn上的edit_inprogress文件滚动生成edit_sum文件3.将edit_sum文件传给sn4.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的元数据管理的主要内容,如果未能解决你的问题,请参考以下文章

hdfs的元数据管理

HDFS HA架构以及源代码引导

HDFS详解

HDFS的读写背后

HDFS成员的工作机制

拿到hive的元数据库权限能否拿到所有用户的数据?