海量小文件处理方式——HAR

举报
敏敏君主 发表于 2021/01/18 19:05:11 2021/01/18
【摘要】 目前针对大数据场景处理海量小文件的方式和理论比较多,今天我们来聊一聊HAR,hadoop archiveHadoop archive 正如它的名字一样,是基于归档技术将大量小文件打包到HDFS块。Hadoop archive 中的文件存储在主存中,可以直接访问。下图是归档中的小文件数据模型:即目录dir下面存在n个文件,分别是file-1,file-2,。。。file-n。启动归档操作,将上...

目前针对大数据场景处理海量小文件的方式和理论比较多,今天我们来聊一聊HAR,hadoop archive

Hadoop archive 正如它的名字一样,是基于归档技术将大量小文件打包到HDFS块。Hadoop archive 中的文件存储在主存中,可以直接访问。

下图是归档中的小文件数据模型:

即目录dir下面存在n个文件,分别是file-1,file-2,。。。file-n。

启动归档操作,将上述n个文件打包为Firsttry.har文件,Firsttry.har文件中包含了index、masterindex和保存文件的分区,比如part0,part1等。

使用hadoop archive可以减少Namenode节点存储压力,并且可以减少map操作从而提供性能。

使用下面的命令来创建Har 文件:

        hadoop archive  -archiveName name -p <parent> <src>* <dest>

上述命令会启动一个map reduce任务完成文件打包。

例如:

       hadoop archive -archiveName firsttry.har -p /user/hadoop dir1 dir2 /user/Sachin

注:当创建archive时,源文件不会被更改或删除。 

总结下hadoop archive方式的几个限制:

1、hadoop archive读文件性能比HDFS读文件性能差。

2、hadoop archive创建之后不能修改,不能追加。

---------------------------------------------------------------------------------------------------

为了解决hadoop archive创建后不能修改的问题,明天我们来聊聊改进版的hadoop archive如何解决这个问题的。

【版权声明】本文为华为云社区用户翻译文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容, 举报邮箱:cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。