• hadoop镜像文件和编辑日志文件


    镜像文件和编辑日志文件

    1)概念

      namenode被格式化之后,将在/opt/module/hadoop-2.7.2/data/tmp/dfs/name/current目录中产生如下文件

    edits_0000000000000000000

    fsimage_0000000000000000000.md5

    seen_txid

    VERSION

    (1)Fsimage文件:HDFS文件系统元数据的一个永久性的检查点,其中包含HDFS文件系统的所有目录和文件idnode的序列化信息。 

    (2)Edits文件:存放HDFS文件系统的所有更新操作的路径,文件系统客户端执行的所有写操作首先会被记录到edits文件中。 

    (3)seen_txid文件保存的是一个数字,就是最后一个edits_的数字

    (4)每次Namenode启动的时候都会将fsimage文件读入内存,并从00001开始到seen_txid中记录的数字依次执行每个edits里面的更新操作,保证内存中的元数据信息是最新的、同步的,可以看成Namenode启动的时候就将fsimage和edits文件进行了合并。

    2)oiv查看fsimage文件

    (1)查看oiv和oev命令

    [root@hadoop102 current]$ hdfs

    oiv                  apply the offline fsimage viewer to an fsimage
    oev                  apply the offline edits viewer to an edits file

    (2)基本语法

    hdfs oiv -p 文件类型 -i镜像文件 -o 转换后文件输出路径

    (3)案例实操

    [root@hadoop102 current]$ pwd
    
    /opt/module/hadoop-2.7.2/data/tmp/dfs/name/current
    
    [root@hadoop102 current]$ hdfs oiv -p XML -i fsimage_0000000000000000025 -o /opt/module/hadoop-2.7.2/fsimage.xml
    
    [root@hadoop102 current]$ cat /opt/module/hadoop-2.7.2/fsimage.xml

    将显示的xml文件内容拷贝到eclipse中创建的xml文件中,并格式化。

    3)oev查看edits文件

    (1)基本语法

    hdfs oev -p 文件类型 -i编辑日志 -o 转换后文件输出路径

    (2)

    [root@hadoop102 current]$ hdfs oev -p XML -i edits_0000000000000000012-0000000000000000013 -o /opt/module/hadoop-2.7.2/edits.xml
    
    [root@hadoop102 current]$ cat /opt/module/hadoop-2.7.2/edits.xml

    将显示的xml文件内容拷贝到eclipse中创建的xml文件中,并格式化。

  • 相关阅读:
    简单破解.net(C#)程序
    URL和URI
    Java JDK安装和配置(Windows)
    函数式编程语言
    Http
    drf 序列化获取商品分类数据
    npm install 安装依赖报错
    27-----BBS论坛
    26-----BBS论坛
    25-----BBS论坛
  • 原文地址:https://www.cnblogs.com/alexzhang92/p/10869343.html
Copyright © 2020-2023  润新知