数仓:解读 NameNode 的 edits 和 fsimage 文件内容

一、edits 文件

  • <RECORD>
        <OPCODE>OP_START_LOG_SEGMENTOPCODE>   --- 表示对一次写操作记录的开始
        <DATA>
          <TXID>138TXID>               ---------- HDFS的第138号记录
        DATA>
      RECORD>

a.xml.COPYING: 写入 ‘a.xml’ 文件的过程中,会先将文件写到该临时文件中,最后再将该文件重命名后存放到DN;

  •   <RECORD>    <OPCODE>OP_ADDOPCODE>     ------------- 写文件操作    <DATA>      <TXID>139TXID>       ---------------- HDFS的第139号记录      <LENGTH>0LENGTH>      <INODEID>16416INODEID>      <PATH>/a.xml.COPYINGPATH>       --- 写'a.xml'文件的过程中生成临时文件'a.xml.COPYING'      <REPLICATION>3REPLICATION>        --- 副本数      <MTIME>1603341874966MTIME>        --- 创建时间      <ATIME>1603341874966ATIME>        --- 修改时间      <BLOCKSIZE>134217728BLOCKSIZE>    --- 文件块的大小:128M      <CLIENT_NAME>DFSClient_NONMAPREDUCE-1327338057_1CLIENT_NAME>   ---- 来源哪个客户端      <CLIENT_MACHINE>192.168.26.101CLIENT_MACHINE>        --------------- 通过哪个机器上传的      <OVERWRITE>trueOVERWRITE>                            --------------- 是否允许被覆盖      <PERMISSION_STATUS>                                         ---------- 权限信息        <USERNAME>heycUSERNAME>                                 ---------- 所属主        <GROUPNAME>supergroupGROUPNAME>                         ---------- 所属组        <MODE>420MODE>                                          ---------- 权限大小(777最大)      PERMISSION_STATUS>      <RPC_CLIENTID>3299ce83-ba14-4468-8cf8-b5edb5dea153RPC_CLIENTID> ---- 集群ID      <RPC_CALLID>3RPC_CALLID>    DATA>  RECORD>
  •  <RECORD>    <OPCODE>OP_ALLOCATE_BLOCK_IDOPCODE> ---- 表示该步为记录 “定义块ID”    <DATA>      <TXID>140TXID>                    ---- HDFS的第140号记录      <BLOCK_ID>1073741835BLOCK_ID>    ----- 块ID    DATA> RECORD>
  • <RECORD>    <OPCODE>OP_SET_GENSTAMP_V2OPCODE>    <DATA>      <TXID>141TXID>      <GENSTAMPV2>1012GENSTAMPV2>    DATA>RECORD>
  •  <RECORD>    <OPCODE>OP_ADD_BLOCKOPCODE>    <DATA>      <TXID>142TXID>      <PATH>/a.xml.COPYINGPATH>      <BLOCK>        <BLOCK_ID>1073741835BLOCK_ID>        <NUM_BYTES>0NUM_BYTES>        <GENSTAMP>1012GENSTAMP>      BLOCK>      <RPC_CLIENTID>RPC_CLIENTID>      <RPC_CALLID>-2RPC_CALLID>    DATA> RECORD>
  •   <RECORD>    <OPCODE>OP_CLOSEOPCODE>    <DATA>      <TXID>143TXID>      <LENGTH>0LENGTH>      <INODEID>0INODEID>      <PATH>/a.xml.COPYINGPATH>      <REPLICATION>3REPLICATION>      <MTIME>1603341875516MTIME>      <ATIME>1603341874966ATIME>      <BLOCKSIZE>134217728BLOCKSIZE>      <CLIENT_NAME>CLIENT_NAME>      <CLIENT_MACHINE>CLIENT_MACHINE>      <OVERWRITE>falseOVERWRITE>      <BLOCK>        <BLOCK_ID>1073741835BLOCK_ID>        <NUM_BYTES>313NUM_BYTES>        <GENSTAMP>1012GENSTAMP>      BLOCK>      <PERMISSION_STATUS>        <USERNAME>heycUSERNAME>        <GROUPNAME>supergroupGROUPNAME>        <MODE>420MODE>      PERMISSION_STATUS>    DATA>  RECORD>
  • <RECORD>    <OPCODE>OP_RENAME_OLDOPCODE>    <DATA>      <TXID>144TXID>      <LENGTH>0LENGTH>      <SRC>/a.xml.COPYINGSRC>      <DST>/a.xmlDST>      <TIMESTAMP>1603341875552TIMESTAMP>      <RPC_CLIENTID>3299ce83-ba14-4468-8cf8-b5edb5dea153RPC_CLIENTID>      <RPC_CALLID>8RPC_CALLID>    DATA>RECORD>

二、fsimage 文件

  • <inode>
        <id>16417id>
        <type>FILEtype>         ------ 文件类型:常规文件(如果是文件夹则为 'DIRECTORY')
        <name>b.xmlname>       ----- 文件名
        <replication>3replication> --- 副本数
        <mtime>1603342078483mtime> --- 创建时间
        <atime>1603342078253atime> --- 修改时间
        <perferredBlockSize>134217728perferredBlockSize> --- 块大小
        <permission>heyc:supergroup:rw-r--r--permission> --- 权限
        <blocks>                                          ---- 被切成了几个块
            <block>                                       --- 一个快
                <id>1073741836id>     ----- 块的id
                <genstamp>1013genstamp> --- 块的时间戳
                <numBytes>313numBytes>  --- 块中存放的数据的大小(该文件只有一个块,该大小即为文件大小)
            block>
        blocks>
    inode>

Original: https://www.cnblogs.com/volcao/p/13858031.html
Author: 何永灿
Title: 数仓:解读 NameNode 的 edits 和 fsimage 文件内容

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/534051/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球