美文网首页
如何稳定解析Hdfs fsImage文件

如何稳定解析Hdfs fsImage文件

作者: _Kantin | 来源:发表于2021-10-09 10:23 被阅读0次

背景

  • 众所周知,要获取hdfs中存储的目录信息,比较简单的方式可通过访问8020来获取,但是此举会增加NN的压力,同时也采集不到我们最关心的数据访问时间这个字段。
  • 通过解析Hdfs image的话,可得到数据访问时间字段,将非常有利于我们进行冷热数据分析。

过程

  • FsImage文件是分布在运行NN的机器上的,因此需定时把Image上次到hdfs上
  • 笔者是每天定时起docker容器拉取Image进行解析
  • 实践证明解析后的Image文件大概是原文件的三倍大小
  • 解析命令
# 字符按照“,”进行分割,强烈建议加上-t参数,防止OOM
hdfs oiv -p Delimited -delimiter ,  -t  temporaryDir -i fsimage_0000000075762298193 -o fsimage.csv
  • 解析后的字段含义分别是:
    • Path:目录路径
    • Replication:副本数
    • ModificationTime:最后修改时间
    • AccessTime:最后访问时间
    • PreferredBlockSize:首选块大小,单位:byte
    • BlocksCount:块的数量
    • FileSize:文件大小,单位:byte
    • NSQUOTA:名称配额 限制指定目录下允许的文件和目录的数量。
    • DSQUOTA:空间配额 限制该目录下允许的字节数
    • Permission:权限
    • UserName:用户
    • GroupName:用户组
  • 最后可以把解析玩的csv文件上传到HIVE中,通过写HQL查询你感兴趣的东西
  • fsImage中数据非常全,相当于全景图,只要想要的几乎都可以查到

相关文章

网友评论

      本文标题:如何稳定解析Hdfs fsImage文件

      本文链接:https://www.haomeiwen.com/subject/keqqoltx.html