hadoop——压缩和本地库
来源:互联网 发布:红警2修改数据 编辑:程序博客网 时间:2024/04/28 01:25
为什么经常把hadoop的本地库和压缩一起说,原来hadoop是使用Java语言开发的,但是一些需求和操作并不适合使用java(性能问题)或某些java类库的缺失,所以就引入了本地库(c/c++编写)的概念,而压缩的一些格式就正好需要使用本地库。
1. 压缩
hadoop中为什么使用压缩,因为压缩既减少了占用磁盘的空间又加快了文件的传输速度。
hadoop中常用到的压缩格式有lzo,lz4,gzip,snappy,bzip2,关于这几种压缩格式的比较如下表
详细参考来源: http://www.linuxidc.com/Linux/2014-05/101230.htm
hadoop中的codec实现了压缩-解压缩算法
实际使用举例:
按小时收集服务器日志,并且清洗数据后输出。
解决方案:
因为日志格式是文本文档且量大,所以收集后采用压缩率最高但是速度比较慢的bzip2格式压缩存储,并且bzip2格式压缩支持对输入文件的分片(虽然我们的数据还没到需要分片的地步),在MR执行任务时,会在读取时自动解压缩文件;同时可以对map任务的输出和reduce的输出做bzip2格式的压缩处理。
2. 本地库(Native Libraries)
压缩使用native库往往比使用内置java实现压缩解压缩速度快。默认情况下,hadoop会搜索本地库,如果找到就会自动加载,但通常本地库因为版本的原因需要重新安装编译,所以如果使用gzip/LZO/Snappy格式之前需要安装相应库。
下表给出了每种压缩格式的java内置实现和原生库实现
可以使用hadoop checknative查看本地库的安装情况,截图显示已安装
以上待续…
0 0
- hadoop——压缩和本地库
- Hadoop本地压缩库<转>
- hadoop 压缩和解压
- hadoop深入研究:(七)——压缩
- hadoop深入研究:(七)——压缩
- hadoop深入研究:(七)——压缩
- hadoop深入研究:(七)——压缩
- hadoop深入研究:(七)——压缩
- hadoop案例测试——pi值、wordcount函数,hadoop不支持本地库问题
- hadoop本地库
- Hadoop本地库
- Hadoop本地库
- Hadoop-编译本地库
- hadoop本地库介绍
- Hadoop本地库
- sublime利用ClosureCompiler和YUICompressor本地压缩
- androidr图片压缩和保存本地
- 本地预览图片和前端图片压缩
- des+base加密解密
- TCP option 3, Window Scale
- oracle基础一
- structs框架结构
- 如何解决github安装失败
- hadoop——压缩和本地库
- 11Spring MVC异常处理
- 12StringUtils类
- Java网络编程之(二): TCP的多线程连接
- Sublime Text插件:HTML+CSS+JAVASCRIPT+JSON快速格式化
- 单链表实现(超简单)
- springmvc+hibernate4+spring3整合
- 13Spring文件上传下载
- Math.random()随机产生【x,y)的随机数