hadoop小文件处理以及解决方案(压缩技术)

本文探讨了Hadoop面对大量小文件时存在的问题,包括内存占用和检索速度下降。提出了两种解决方案:一是利用Hadoop的内置文件压缩,如gzip和lzo,以减少文件大小和索引开销;二是通过系统层面的小文件合并和快速索引,如Hadoop Archive (HAR)、Sequence File和CombineFileInputFormat,来优化存储和访问效率。文章还分析了HDFS的文件读写流程,并介绍了针对特定应用的系统解决方案。
摘要由CSDN通过智能技术生成

小文件太多的问题:

hdfs上每个文件都要在namenode上建立索引,索引大小大约为150byte。所以大量小文件会产生很多索引,占用大量namenode内存,而且索引太多导致检索速度变慢。

 

小文件解决方案:

1、hadoop自身提供一些文件压缩方案

2、从系统层面改变现有hdfs存在的问题,其实还是小文件的合并,然后建立比较快速的索引

 

下面分别对这两种解决方案做一些解析

1、hadoop自身提供一些文件压缩方案

 hadoop对每个压缩格式的支持,详细见下表:

 压缩格式  工具  算法  文件扩展名  多文件  可分割性
 DEFLATE  无  DEFLATE  .deflate  不  不
 gzip  gzip  DEFLATE  .gz  不  不
 ZIP  zip  DEFLATE  .zip  是  是,在文件范围内
 bzip2  bzip2  bzip2  .bz2  不  是
 LZO  lzop  LZO  .lzo  不  否

hadoop下各种压缩算法的压缩比,压缩时间,解压时间见下表:

压缩算法 原始文件大小 压缩后的文件大小 压缩速度 解压缩速度
gzip   8.3GB   1.8GB 17.5MB/s 58MB/s
bzip2 8.3GB 1.1GB 2.4MB/s 9.5MB/s
LZO-bset 8.3GB 2GB 4MB/s 60.6MB/s
LZO
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值