配置hadoop集群的lzo压缩
MR-Job中使用lzop详见MR案例:Job中使用Lzo压缩
1). 配置前的环境准备
# yum -y install lzo-devel zlib-devel gcc autoconf automakelibtool
2). (all) 在集群的所有节点上安装Lzo库
下载、解压,然后编译。并将/usr/local/hadoop/lzo-2.06目录下的所有文件打包,并同步到集群中的所有机器上。相关命令:
# tar -zxvf lzo-2.06.tar.gz
# cd lzo-2.06
# export CFLAGS=-m64
# ./configure --enable-shared
# make
# make install
3). Lzo库文件被默认安装到了/usr/local/lib,我们需要进一步指定lzo库文件的路径。两个方法:
3.1. 拷贝/usr/local/lib目录下的lzo库文件到/usr/lib(32位平台),或/usr/lib64(64位平台)
#cp /usr/local/lib/liblzo2.* /usr/lib64
3.2. 在/etc/ld.so.conf.d/目录下新建lzo.conf文件,写入lzo库文件的路径,然后运行/sbin/ldconfig -v,使配置生效
#vi /etc/ld.so.conf.d/lzo.conf
/usr/local/lib
# /sbin/ldconfig -v
4). 编译安装Hadoop Lzo本地库以及Jar包
采用twitter的下载地址,解压文件
unzip hadoop-lzo-master.zip
4.1.修改 pom.xml 文件,即hadoop的当前版本
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<hadoop.current.version>2.2.0</hadoop.current.version>
<hadoop.old.version>1.0.4</hadoop.old.version>
</properties>
4.2.hadoop-lzo-master.zip文件相关操作
cd hadoop-lzo-master
export CFLAGS=-m64
export CXXFLAGS=-m64
export C_INCLUDE_PATH=/usr/local/include/lzo
export LIBRARY_PATH=/usr/local/lib
//预先安装好maven
mvn clean package -Dmaven.test.skip=true
4.3.把target/native/Linux-amd64-64/lib下的全部文件拷贝到${HADOOP_HOME}/lib/native
[root@ncst target]# cd native/Linux-amd64-64
[root@ncst Linux-amd64-64]# tar -cBf - -C lib . | tar -xBvf - -C ~
[root@ncst ~]# cp ~/libgplcompression* $HADOOP_HOME/lib/native/
4.4.然后拷贝JAR包
cp hadoop-lzo-master
/target/hadoop-lzo-0.4.-SNAPSHOT.jar /opt/hadoop-2.2./share/hadoop/common/lib
5). 对于Hbase启用Lzo
cp $HADOOP_HOME/lib/native/Linux-amd64-64/* $HBASE_HOME/lib/native/Linux-amd64-64
5.1.修改:hbase-env.sh
exportHBASE_LIBRARY_PATH=$HBASE_LIBRARY_PATH:$HBASE_HOME/lib/native/Linux-amd64-/:/usr/local/lib/
6). 修改配置文件
6.1.在hadoop-env.sh中加入
export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native
6.2.在core-site.xml
<!-- 配置 Hadoop压缩包 -->
<property>
<name>io.compression.codecs</name>
<value>org.apache.hadoop.io.compress.DefaultCodec,org.apache.hadoop.io.compress.GzipCodec,org.apache.hadoop.io.compress.BZip2Codec,com.hadoop.compression.lzo.LzoCodec,com.hadoop.compression.lzo.LzopCodec</value>
</property>
<property>
<name>io.compression.codec.lzo.class</name>
<value>com.hadoop.compression.lzo.LzoCodec</value>
</property>
6.3.在mapred-site.xml
<property>
<name>mapreduce.map.output.compress</name>
<value>true</value>
</property> <property>
<name>mapreduce.map.output.compress.codec</name>
<value>com.hadoop.compression.lzo.LzoCodec</value>
</property> <property>
<name>mapred.child.env</name>
<value>LD_LIBRARY_PATH=/usr/local/lib</value>
</property>
7). 安装lzop
Lzop是使用lzo库写的一个程序,通过shell命令直接可以压缩、解压缩文件。下载地址
tar zxvf lzop-1.03.tar.gz
cd lzop-1.03
# exportLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
# ./configure
# make
# makeinstall
配置hadoop集群的lzo压缩的更多相关文章
- 开启hadoop和Hbase集群的lzo压缩功能(转)
原文链接:开启hadoop和Hbase集群的lzo压缩功能 问题导读: 1.如何启动hadoop.hbase集群的压缩功能? 2.lzo的作用是什么? 3.hadoop配置文件需要做哪些修改? 首先我 ...
- Linux中安装配置hadoop集群
一. 简介 参考了网上许多教程,最终把hadoop在ubuntu14.04中安装配置成功.下面就把详细的安装步骤叙述一下.我所使用的环境:两台ubuntu 14.04 64位的台式机,hadoop选择 ...
- 在 Linux 服务器上搭建和配置 Hadoop 集群
实验条件:3台centos服务器,jdk版本1.8.0,Hadoop 版本2.8.0 注:hadoop安装和搭建过程中都是在用户lb的home目录下,master的主机名为host98,slave的主 ...
- hadoop集群环境搭建之安装配置hadoop集群
在安装hadoop集群之前,需要先进行zookeeper的安装,请参照hadoop集群环境搭建之zookeeper集群的安装部署 1 将hadoop安装包解压到 /itcast/ (如果没有这个目录 ...
- centos7配置hadoop集群
一:测试环境搭建规划: 主机名称 IP 用户 HDFS YARN hadoop11 192.168.1.101 hadoop NameNode,DataNode NodeManager hadoop1 ...
- 安装和配置hadoop集群步骤
hadoop集群的安装步骤和配置 hadoop是由java语言编写的,首先我们肯定要在电脑中安装jdk,配置好jdk的环境,接下来就是安装hadoop集群的步骤了,在安装之前需要创建hadoop用户组 ...
- linux配置hadoop集群
①安装虚拟机 ②为虚拟机添加共享文件 右击已经安装好的虚拟机 设置—>选项—>共享文件 ③配置映射 sudo nano /etc/network/interfaces 重启网络:sud ...
- 为Linux集群创建新账户,并配置hadoop集群
转自:http://blog.csdn.net/bluesky8640/article/details/6945776 之前装python.jdk.hadoop都是用的root账户,这是一个绝对的失策 ...
- 配置hadoop集群一
花了1天时间最终把环境搭建好了.整理了一下,希望对想学习hadoop的有所帮助. 资料下载:http://pan.baidu.com/s/1kTupgkn 包括了linux虚拟机.jdk, hadoo ...
随机推荐
- rabbitmq 用户管理
rabbitmqctl add_user root cor2016 rabbitmqctl set_user_tags root administrator http://host:15672/#/u ...
- 170406、用uid分库,uname(用户名)上的查询怎么办
[缘起] 用户中心是几乎每一个公司必备的基础服务,用户注册.登录.信息查询与修改都离不开用户中心. 当数据量越来越大时,需要多用户中心进行水平切分.最常见的水平切分方式,按照uid取模分库: 通过ui ...
- 搜索R包和查看包的技巧
1.R怎么搜包 # 安装sos包 install.packages("sos") # 导入sos包 library(sos) # 使用函数findFn() 函数里面传入关键字来搜索 ...
- API网关+Kubernetes集群的架构替代了传统的Nginx(Ecs)+Tomcat(Ecs)
API网关为K8s容器应用集群提供强大的接入能力_最佳实践_API 网关-阿里云 https://help.aliyun.com/document_detail/71623.html 在最后一节,我们 ...
- linux 将同后缀名的文件统一移至另一个文件夹
w
- Python 之网络编程
# 流程描述: # # 1. 服务器根据地址类型(ipv4, ipv6), socket类型, 协议创建socket; # # 2. 服务器为socket绑定ip地址和端口号; # # 3. 服务器s ...
- Python 面向对象进阶(二)
1. 垃圾回收 小整数对象池 Python对小整数的定义是 [-5, 257),这些整数对象是提前建立好的; 在一个Python程序中,所有位于这个范围内的整数,使用的都是同一个对象; 单个字符共用对 ...
- LeetCode_Compare Version Numbers
题目: Compare two version numbers version1 and version2. If version1 > version2 return 1, if versio ...
- Ignatius and the Princess IV---hdu1029(动态规划或者sort)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1029 就是给你n(n是奇数)个数找出个数大于(n+1)/ 2 的那个数: n的取值范围是 n(1< ...
- 你应该知道的vim插件之surround.vim
写代码的时候你会发现这个插件是多么有用! 强烈推荐! 0×01.change 123456 cs"' cs"<q> cs)] cst<p> csw' csW ...