几种压缩方式及各自优缺点【重点】

简介: 几种压缩方式及各自优缺点【重点】

压缩方式有 Gzip、Bzip2、LZO、Snappy 压缩等几种方式,他们的优缺点分别为:

1.Gzip 压缩:Hadoop 自带的压缩方式,不支持切片,压缩比率高,但压缩速度慢;

应用场景:

(1)因为不支持切片,所以可以用在 “当每个文件压缩之后都不超过 130M 以内的(一个块大小内)的场景。”

 

2.Bzip2 压缩:Hadoop 自带的压缩方式,支持切片,压缩率很高,比 Gzip 还高,但压缩速度很慢,毕竟慢工出细活;

应用场景:

(1)适合对速度要求不高,但需要较高的压缩率的时候

(2)输出的数据比较大,需要压缩存档减少磁盘空间并且以后数据用的少的情况(冷数据)

(3)单个很大的文本文件想压缩来减少存储空间,同时又需要支持 Split。

 

3.LZO 压缩:Hadoop 默认不支持 LZO,需要手动配置才可以使用,支持切片,压缩率介于 Gzip 和 Snappy 之间,压缩速度也较快。

应用场景:

(1)当一个文本文件很大时,压缩之后还大于 200M 以上的可以考虑,而且单个文件越大,LZO 有点越明显。

 

4.Snappy 压缩:Hadoop 自带的压缩方式,不支持切片,压缩率较低,但压缩速度特别快。

应用场景:

(1)当 Map 输出的数据较大,作为 Map 到 Reduce 的中间数据的压缩格式

(2)作为一个 MapReduce 作业的输出(reduce)和另一个 MapReduce 作业的输入(Map)

 

提示:如果面试过程问起,我们一般回答压缩方式为 Snappy,特点速度快,缺点无法

切分(可以回答在链式 MR 中,Reduce 端输出使用 bzip2 压缩,以便后续的 map 任务对数据进行 split

 

项目经验之 LZO 压缩

Hadoop 默认不支持 LZO 压缩,如果需要支持 LZO 压缩,需要添加 jar 包,并在 hadoopcores-site.xml 文件中添加相关压缩配置。

相关文章
|
6月前
|
人工智能 算法 机器人
字节Coze优缺点分析
【2月更文挑战第16天】字节Coze优缺点分析
1618 2
字节Coze优缺点分析
|
21天前
|
存储 缓存 运维
缓存技术有哪些优缺点呢
【10月更文挑战第19天】缓存技术有哪些优缺点呢
|
3月前
|
存储 缓存 Java
Android项目架构设计问题之优化业务接口数据的加载效率如何解决
Android项目架构设计问题之优化业务接口数据的加载效率如何解决
44 0
|
4月前
|
缓存 Java
浅析JAVA日志中的性能实践与原理解释问题之AsyncAppender的配置方式的问题是如何解决的
浅析JAVA日志中的性能实践与原理解释问题之AsyncAppender的配置方式的问题是如何解决的
|
4月前
|
存储 Java
浅析JAVA日志中的性能实践与原理解释问题之测试日志内容大小对系统性能的影响问题如何解决
浅析JAVA日志中的性能实践与原理解释问题之测试日志内容大小对系统性能的影响问题如何解决
109 0
|
4月前
|
消息中间件 存储 Java
三类代码协同模式问题之压缩异常输出以提高性能和节省存储空间的问题如何解决
三类代码协同模式问题之压缩异常输出以提高性能和节省存储空间的问题如何解决
|
4月前
|
运维 中间件 数据库
浅析JAVA日志中的性能实践与原理解释问题之元信息打印会导致性能急剧下降问题如何解决
浅析JAVA日志中的性能实践与原理解释问题之元信息打印会导致性能急剧下降问题如何解决
|
6月前
|
监控 安全 网络安全
网络安全行为可控定义以及表现内容简述
网络安全行为可控定义以及表现内容简述
94 1
|
6月前
|
编解码 前端开发 UED
前端布局方式及其优缺点
前端布局方式及其优缺点
58 1
|
6月前
|
存储 缓存 安全
【C/C++ 项目优化实战】 分享几种基础且高效的策略优化和提升代码性能
【C/C++ 项目优化实战】 分享几种基础且高效的策略优化和提升代码性能
332 0