一、各种压缩格式性能对比
压缩能够减少存储磁盘空间,降低网络IO和磁盘IO,加快数据在磁盘和网络中的传输速度,从而提高系统的处理速度。
虽然由以上的好处,但是由于使用数据时,需要先将数据解压,加重了CPU负荷。根据我们的实际工作场景,我们要选择合适的压缩格式。
常见的压缩格式如下:
下面是一份源数据1.4G的文件,各类压缩格式的比率和时间对比
数据压缩后大小:
压缩和解压时间:
从上面对比可以看出:
在压缩数据比上:
Snappy、LZ4、LZO可以压缩到50%左右
GZIP、BZIP2可以压缩到30%左右
在压缩和解压时间上:
Snappy、LZ4、LZO 的压缩时间非常接近,范围6-8秒内;Snappy的解压时间是最高的,是压缩时间的3倍,其次是LZO,LZ4解压时间最低
GZIP、BZIP2 的压缩和解压时间都非常高。
总结一句话就是:压缩比率高的,压缩和解压时间花费就比较长。
那么我们如何选择合适的压缩格式呢?
Snappy:压缩速度快;支持hadoop native库
缺点:不支持split;压缩比低;hadoop本身不支持,需要安装;linux系统下没有对应的命令d.
LZO:压缩/解压速度也比较快,合理的压缩率;支持split,是hadoop中最流行的压缩格式;
支持hadoop native库;需要在linux系统下自行安装lzop命令,使用方便
缺点: 压缩率比gzip要低;
lzo虽然支持split,但需要对lzo文件建索引,否则hadoop也是会把lzo文件看成一个普通文件
GZIP:压缩比较高;hadoop本身支持,在应用中处理gzip格式的文件就和直接处理文本一样;
有hadoop native库;大部分linux系统都自带gzip命令,使用方便
缺点: 不支持split
BZIP2 :支持split;具有很高的压缩率,比gzip压缩率都高;
hadoop本身支持,但不支持native;在linux系统下自带bzip2命令,使用方便
缺点:压缩/解压速度慢;不支持native
参考原文链接:https://blog.csdn.net/greenplum_xiaofan/article/details/99272907
二、lzo在cloudera-manager配置步骤
1.下载lzo jar
http://archive.cloudera.com/gplextras5/parcels/
国内访问不稳定,碰到打不开的情况多刷新几次试试
版本选择
CDH集群 | GPL Extras 版本 |
---|---|
5.x.y/ | GPL Extras 5.x.y/ |
例如:我的CDH集群版本是: CDH-5.16.2-1.cdh5.16.2.p0.8-el7.parcel 对应选择的GPL Extras 版本 GPLEXTRAS-5.16.2-1.cdh5.16.2.p0.8-el7.parcel,其中el6、el7是操作系统的版本,需要根据自己的系统进行选择
准备安装文件
GPLEXTRAS-5.16.2-1.cdh5.16.2.p0.8-el7.parcel
CDH-5.16.2-1.cdh5.16.2.p0.8-el7.parcel.sha1 (使用的时候重命名成.sha)
manifest.json
2.将安装文件上传至cm共享目录
因为使用的是parcels安装,首先将下载好的文件放到cloudera-manager共享的目录中,此处为:
注:这里要根据自己实际安装路径修改
3.安装激活lzo服务
进入cm管理界面,选择主机—>Parcel,点击检查新Parcel,如果配置正确将会出现 GPLEXTRAS 对应版本为 5.16.2-1.cdh5.16.2.p0.8。
点击分配,耐心等待几分钟后,再点击激活,出现如下图状态,表示 lzo服务安装工作已经完成。
4.配置hadoop支持lzo
1)修改HDFS配置
在io.compression.codecs属性值中追加如下值:
com.hadoop.compression.lzo.LzoCodec
com.hadoop.compression.lzo.LzopCodec
2)修改YARN配置
将 mapreduce.application.classpath属性添加一项:/opt/cloudera/parcels/GPLEXTRAS/lib/hadoop/lib/*
3)修改MR应用程序环境
修改mapreduce.admin.user.env 追加 :/opt/cloudera/parcels/GPLEXTRAS/lib/hadoop/lib/native
重启集群使配置生效
4.配置hive支持lzo
修改hive辅助jar目录,增加一项:/opt/cloudera/parcels/GPLEXTRAS/lib/hadoop/lib/
来源:CSDN
作者:左岸Json
链接:https://blog.csdn.net/djx1085213329/article/details/104295557