LZO压缩的编译和安装
因为Hadoop本身并不支持LZO,所以只能通过hadoop-lzo
组件来适配Hadoop
-
此片文章选用的版本是
lzo-2.10.tar.gz
-
编译环境的安装
#以下大部分环境都是自带的,如果存在这条命令会更新这些环境 yum -y install gcc-c++ lzo-devel glib-devel autoconf automake libtool
-
编译
-
设置临时变量
export CFLAGS=-m64
-
在解压目录下创建一个
compile
文件夹- 之后编译
hadoop-lzo
时要用到这里面的组件
- 之后编译
-
执行编译
export CFLAGS=-m64 mkdir complie ./configure -enable-shared -prefix=/home/hadoop/app/lzo-2.06/complie/ make && make install
-
编译hadoop-lzo组件
通过编译这个组件,可以使LZO适配自己选定的Hadoop版本。开始编译前需要确保自己安装了Maven,并且更换了国内的源
-
下载hadoop-lzo源码
- hadoop-lzo只有zip压缩版的,解压时需要适用unzip
- 下载连接
-
修改pom文件
<!--修改hadoop.current.version标签中的版本为自己对应的版本--> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <hadoop.current.version>2.7.7</hadoop.current.version> <hadoop.old.version>1.0.4</hadoop.old.version> </properties>
-
编译
-
创建临时环境变量
export CFLAGS=-m64 export CXXFLAGS=-m64 export C_INCLUDE_PATH=/.../LZO_HOME/complie/include #设置为LZO安装路径中compile下在include目录 export LIBRARY_PATH=/.../LZO_HOME/complie/lib #设置为LZO安装路径中compile下在lib目录
-
开始编译
#确保JDK安装正确 #确保Maven已经更换了源(有大量jar包需要下载,不更换源速度会非常慢) mvn clean package -Dmaven.test.skip=true
-
在target目录下即可找到编译好的
hadoop-lzo-0.4.21-SNAPSHOT.jar
文件
-