[hadoop]常用压缩格式在Hadoop中的应用(spark)
来源:互联网 发布:c语言顺序表的初始化 编辑:程序博客网 时间:2024/05/23 18:30
1 gzip压缩
优点:压缩率比较高,而且压缩/解压速度也比较快;hadoop本身支持,在应用中处理gzip格式的文件就和直接处理文本一样;有hadoop native库;大部分linux系统都自带gzip命令,使用方便。
缺点:不支持split。
应用场景:当每个文件压缩之后在130M以内的(1个块大小内),都可以考虑用gzip压缩格式。譬如说一天或者一个小时的日志压缩成一个gzip文件,运行mapreduce程序的时候通过多个gzip文件达到并发。hive程序,streaming程序,和java写的mapreduce程序完全和文本处理一样,压缩之后原来的程序不需要做任何修改。
2 lzo压缩
优点:压缩/解压速度也比较快,合理的压缩率;支持split,是hadoop中最流行的压缩格式;支持hadoop native库;可以在linux系统下安装lzop命令,使用方便。
缺点:压缩率比gzip要低一些;hadoop本身不支持,需要安装;在应用中对lzo格式的文件需要做一些特殊处理(为了支持split需要建索引,还需要指定inputformat为lzo格式)。
应用场景:一个很大的文本文件,压缩之后还大于200M以上的可以考虑,而且单个文件越大,lzo优点越越明显。
3 snappy压缩
优点:高速压缩速度和合理的压缩率;支持hadoop native库。
缺点:不支持split;压缩率比gzip要低;hadoop本身不支持,需要安装;linux系统下没有对应的命令。
应用场景:当mapreduce作业的map输出的数据比较大的时候,作为map到reduce的中间数据的压缩格式;或者作为一个mapreduce作业的输出和另外一个mapreduce作业的输入。
4 bzip2压缩
优点:支持split;具有很高的压缩率,比gzip压缩率都高;hadoop本身支持,但不支持native;在linux系统下自带bzip2命令,使用方便。
缺点:压缩/解压速度慢;不支持native。
应用场景:适合对速度要求不高,但需要较高的压缩率的时候,可以作为mapreduce作业的输出格式;或者输出之后的数据比较大,处理之后的数据需要压缩存档减少磁盘空间并且以后数据用得比较少的情况;或者对单个很大的文本文件想压缩减少存储空间,同时又需要支持split,而且兼容之前的应用程序(即应用程序不需要修改)的情况。
最后用一个表格比较上述4种压缩格式的特征(优缺点):
4种压缩格式的特征的比较 压缩格式 split native 压缩率 速度 是否hadoop自带 linux命令 换成压缩格式后,原来的应用程序是否要修改 gzip否是很高比较快是,直接使用有和文本处理一样,不需要修改lzo是是比较高很快否,需要安装有需要建索引,还需要指定输入格式snappy否是比较高很快否,需要安装没有和文本处理一样,不需要修改bzip2是否最高慢是,直接使用有和文本处理一样,不需要修改
- [hadoop]常用压缩格式在Hadoop中的应用(spark)
- 4种常用压缩格式在Hadoop中的应用
- 压缩在hadoop中的应用
- hadoop压缩格式
- hadoop的压缩格式
- hadoop文件压缩格式
- hadoop常用算法在spark中实现
- Hadoop在淘宝中的应用
- Zookeeper 在Hadoop中的应用
- ZOOKEEPER在HADOOP中的应用
- Hadoop,Spark :文件输出压缩
- Hadoop MapReduce中的压缩
- Hadoop中的压缩Codec
- 4.hadoop中的压缩
- hadoop 四种压缩格式
- hadoop 四种压缩格式
- Hadoop平台在云计算中的应用
- Hadoop在反作弊中的应用
- Spring boot
- Java接口事件
- Vue.set和Vue.delete属性的简单使用
- nginx代理websocket服务
- android 跑马灯重复抖动的解决方法
- [hadoop]常用压缩格式在Hadoop中的应用(spark)
- 查询昨天,今天,明天等的mysql语句
- C语言指针小结
- 1070. 结绳(25) PAT乙级真题
- 1019 逆序数
- MySQL忽略顺序的正则模糊匹配
- 【学习笔记】设计模式-MVC模式
- VTK学习-VTK基本数据结构
- 《科研有方——科研需要“想好”再“做”》笔记 Chapter4:科研工具