Edits和Fsimage文件

本文介绍了HDFS中的Edits和Fsimage文件,包括它们的生成、作用和更新过程。从格式化HDFS开始,详细阐述了fsimage文件的创建,以及edits文件如何记录事务操作。此外,还探讨了edits_inprogress文件的功能,事务id的分配,以及合并机制。最后,提到了文件上传的多个事务过程和HDFS重启后的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

知识点

通过:hdfs oev -i edits_inprogress_0000000000000000003 -o bbb.xml   查看edits_inprogress_0000000000000000003文件的内容,把内容输出到bbb.xml中,vim bbb.xml即可查看内容

1.当执行格式化指令时,会在指定的tmp目录下,生成/dfs/name目录(此目录在不设定dfs.namenode.name.dir时,在hadoop.tmp.dir配置的路径中。

2.当格式化后,启动hdfs前,会生成一个最初的fsimage_0000000000000000000文件

  <!--- <<property>-->
      <!--指定了nameNode元数据的存储位置-->
      <!--
      <name>dfs.namenode.name.dir</name>
      <value>file:/usr/local/hadoop-2.6.4/hdfs/name</value>
   </property>

 

 <property>
                <!--hadoop.tmp.dir 配置hadoop的namenode服务器元数据存放的位置-->
                <name>hadoop.tmp.dir</name>
                <value>/usr/local/hadoop-2.6.4/tmp</value>
        </property>

3.在dfs/data目录,这是datanode节点存储数据块的目录

4.元数据的存储目录和数据节点的目录的路径可以分开

5.重启后,会在dfs/name/in_use.lock ,这个文件的作用是防止在同一台服务器上启动多个namenode,避免管理的混乱。

6.当启动hdfs时,会生成edits文件

7.hdfs有事务id的概念,当hdfs每接受一个事务操作(比如mkdir put mv),都会分配相应的事务id,然后写在edits文件中。

8。每当生成一个新的edits文件,edits文件中都会以begin log开头,当一个edits文件写完 后,会已end edit结束,即在beginlog====end log之间存储的事这个edits文件所有的事务操作。

9.edits-inprogress文件的作用是当前正在执行的事务操作。后边的编号是上一次事务id txid+1来命名。

10.初次使用hdfs时,有一个默认的edits和fsimage的合并周期是1分钟,以后再使用hdfs的过程中,edits-inprogress到达默认的合并周期(3600s)会执行。或者手动合并指令(hadoop dfsadmin -rollEdits),或者停止hdfs再启动

11.上传文件拆分很多事务过程

     OP_ADD将文件假如到指定的HDFS目录下,并以_coping结尾,表示此文件还没写完

    ALLOCATE_BLOCK_ID 为文件分配块ID

   SET_GENSTAMP_V2为块生成时间戳版本号,是全局唯一的。

  ADD_BLOCK写块数据

 OP_CLOSE表示块数据写完了

 OP_RENAME_OLD将文件重命名,表示写完了。

12,当停止hdfs再启动hdfs,执行一个事务后,会触发一次rolledits指令触发endlog事务,然后会产生一个新的edits

13seen_txid记录是最新的edits_inprogress文件末尾的数字

14.fsimage_N文件存储的N号事务前的所有的元数据信息

15.fsimage_00000000000000002.md5 存储的是fsimage文件的md5校验码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值