hadoop之使用LZO压缩文件并支持分片

1.安装lzo以及生成测试数据

1.1生成未压缩的测试数据

先生成一个400M左右的测试数据,这样在使用lzo压缩后就能保证压缩文件大小大于数据块大小,方便后续测试分片效果。 我是通过 cat a >> b,cat b >> a 方式快速实现的数据生成。
测试数据链接:

链接:https://pan.baidu.com/s/1SdW8Nkx-mvrSaoQ2A0U6jA  提取码:o5pn
1.2安装lzo相关工具

lzo格式文件压缩解压需要用到服务器的lzop工具,hadoop 的native库(hadoop checknative是没有的lzo,zip相关信息)并不支持

#检查是否有lzop命令,我这里显示是有的,说明安装过了lzop
[hadoop@hadoop001 ~]$ which lzop
/usr/bin/lzop

#若没有执行如下安装命令
[root@hadoop001 ~]# yum install -y svn ncurses-devel
[root@hadoop001 ~]# yum install -y gcc gcc-c++ make cmake
[root@hadoop001 ~]# yum install -y openssl openssl-devel svn ncurses-devel zlib-devel libtool
[root@hadoop001 ~]# yum install -y lzo lzo-devel lzop autoconf automake cmake 
1.3使用lzop工具压缩测试数据

lzo压缩:lzop -v file
lzo解压:lzop -dv file

#压缩后文件后缀名为.lzo
[hadoop@hadoop001 click]$ ll -h
total 472M
-rw-r--r--. 1 hadoop hadoop 472M Apr 14 05:49 page_views.dat
[hadoop@hadoop001 click]$ lzop -v page_views.dat 
compressing page_views.dat into page_views.dat.lzo
[hadoop@hadoop001 click]$ ll -h
total 683M
-rw-r--r--. 1 hadoop hadoop 472M Apr 14 05:49 page_views.dat
-rw-r--r--. 1 hadoop hadoop 212M Apr 14 05:49 page_views.dat.lzo

2.编译hadoop-lzo

2.1 获取hadoop-lzo源码

下载源码包,并上传到服务器

源码地址:https://github.com/twitter/hadoop-lzo
2.2mvn编译源码
#解压
[hadoop@hadoop001 ~]$ unzip ~/source/hadoop-lzo-master.zip 

#mvn编译,等待出现BUILD SUCCESS则表示编译成功,几分钟左右
[hadoop@hadoop001 ~]$ cd ~/source/hadoop-lzo-master/
[hadoop@hadoop001 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值