HDFS之Offline Viewer

2023-12-20 16:59:16

Offline Image Viewer

离线镜像分析工具,可以将fsimage的内容解析成可读的格式。常用于查看hdfs文件大小分布,查看小文件的数量。

hdfs oiv -p FileDistribution -maxSize maxSize -step size -format -i fsimage -o output

-p|--processor processor 指定镜像处理器,包含Web(默认)、XML、Delimited、DetectCorruption、FileDistribution、ReverseXML
-i|--inputFile 指定输入的镜像文件
-o|--outputFile 指定输出的文件
-maxSize size    指定要分析的文件大小的范围[0,maxSize](以字节为单位)
-step size   指定分布的粒度(默认为2MB),以字节为单位
输出示例
Size Range      NumFiles
[0 B, 0 B]      204
(0 B, 1 MB]     27782
(1 MB, 2 MB]    221
(2 MB, 3 MB]    131
(3 MB, 4 MB]    87
(4 MB, 5 MB]    39
(5 MB, 6 MB]    32
(6 MB, 7 MB]    27
(7 MB, 8 MB]    15
(8 MB, 9 MB]    33
(9 MB, 10 MB]   13
(10 MB, 11 MB]  55
......

Offline Edits Viewer

离线日志分析工具,可以将edits文件的原生的二进制与XML格式之前互相转换。
主要作用在于可以查看某个edit文件中的所有操作。

hdfs oev -p xml -i edits -o edits.xml

[-p ; --processor] 指定处理器,包含binary、xml (default) and stats
stats处理器用于将edits文件中的操作码聚合统计
[-i ; --inputFile] 指定输入的edits文件
[-o ; --outputFile] 指定输出的文件名
[-r ; --recover] 如果读取的edit日志有损坏,使用恢复模式可以跳过损坏的edit文件
转换之后,可以看到每次事务的操作信息
  <RECORD>
    <OPCODE>OP_MKDIR</OPCODE>
    <DATA>
      <TXID>8060659</TXID>
      <LENGTH>0</LENGTH>
      <INODEID>1402753</INODEID>
      <PATH>/tmp/xxxxx</PATH>
      <TIMESTAMP>1703053805692</TIMESTAMP>
      <PERMISSION_STATUS>
        <USERNAME>hive</USERNAME>
        <GROUPNAME>hdfs</GROUPNAME>
        <MODE>448</MODE>
      </PERMISSION_STATUS>
    </DATA>
  </RECORD>

文章来源:https://blog.csdn.net/zincooo/article/details/135108099
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。