解决HDFS上小文件的存储

Posted sunbr

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决HDFS上小文件的存储相关的知识,希望对你有一定的参考价值。

  1. 从源头上解决,在上传到HDFS之前,就将多个小文件归档
    使用tar命令 带上参数-zcvf
    示例:
tar -zcvf xxx.tar.gz  小文件列表
  1. 如果小文件已经上传到HDFS了,可以使用在线归档
    使用hadoop archive命令
    示例:
hadoop archive -archiveName xxx.har -p /文件目录 小文件列表 /存放目录

在线归档的功能实际是一个MR程序,这个程序将HDFS已经存在的多个小文件归档为一个归档文件!

  1. 在本地查看har包里的归档文件,一定要带上har://协议,只有ls不列出归档文件!
hadoop fs -ls har:///xxx.har
  1. 下载归档文件
hadoop fs -get har:///xxx.har/xxx文件




以上是关于解决HDFS上小文件的存储的主要内容,如果未能解决你的问题,请参考以下文章

HDFS简介:不用HDFS我们如何存储大规模数据

HDFS小文件问题及解决方案

如何从根源上解决 HDFS 小文件问题

HDFS(Hadoop Distributed FileSystem,分布式文件储存系统)

Hadoop——HDFS概念

HDFS原理概念扫盲