hadoop数据压缩的选择和比较

hadoop数据压缩的选择和比较

MR支持的压缩编码

hadoop数据压缩的选择和比较_第1张图片

 

为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器:

hadoop数据压缩的选择和比较_第2张图片

 

压缩性能的比较

压缩算法 原始文件大小 压缩文件大小 压缩速度 解压速度
gzip 8.3GB 1.8GB 17.5MB/s 58MB/s
bzip2 8.3GB 1.1GB 2.4MB/s 9.5MB/s
LZO 8.3GB 2.9GB 49.3MB/s 74.6MB/s

自我总结:

只有bzip2和LZO这两种压缩格式是支持切片的,其余的都不支持切片。另外LZO需要安装,其余的都不需要安装。bzip2是“慢工出细活(该压缩方式表示压缩率最高,但是压缩和解压缩的速度的最慢的)”,snappy是压缩和解压缩的速度最快的(250和500M),但是压缩率不高。

压缩方式的选择: 在map和reduce中的map输出多采用snappy的方式,因为该方式的压缩和解压缩的速度都是最快的,不需要考虑其是否能够切片,压缩比如何,最重要的是速度要快,因为在shuffle过程本就是耗费时间的过程,采用压缩的方式,需要让用户感觉到即实现了节省磁盘空间的特点又极小的拖慢shuffle的速度。

在reduce输出阶段:在该阶段很可能落盘的数据需要再次执行mapreduce,这个时候就需要考虑到切片问题了,于是我们在该阶段的压缩通常选择支持切片的LZO格式,即支持切片,同时比bzip2的压缩速度要快很多。

你可能感兴趣的:(hadoop,hadoop)