一 MR 数据压缩
Hadoop三大核心:HDFS(负责存储)、MapReduce(负责计算)、Yarn( 负责调度计算)
Hive基于HDFS存储,Hive计算是将Hql语句转换为MR任务,而MR任务可以对处理的数据进行压缩。所以所谓Hive数据压缩就是MR数据压缩
1、基本含义
MR压缩:通过压缩编码对mapper或者reducer的输出进行压缩,以减少磁盘IO,提高MR程序运行速度,但相应增加了cpu运算负担
压缩特性运用得当能提高性能,但运用不当也可能降低性能。其基本原则是:
- 运算密集型的job,少用压缩
- IO密集型的job,多用压缩
2、压缩编码、算法和对比
MR支持的压缩编码
为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器,如下表所示:
压缩格式 | 对应的编码/解码 |
---|---|
DEFAULT | org.apache.hadoop.io.compress. |