hadoop-lzo 安装配置
在hive中要想使用lzo的格式,需要配置安装好lzo工具并且在hadoop的core-site.xml与mapred-site.xml中配置相应的配置
一、编译安装lzo与lzop
在集群的每一台主机上都需要编译安装!!!
1.下载编译安装lzo文件
http://www.oberhumer.com/opensource/lzo/download/lzo-2.10.tar.gz
版本可以下载最新的 http://www.oberhumer.com/opensource/lzo/download
编译安装(保证主机上有gcc与g++)
tar -xvzf lzo-2.10.tar.gz cd lzo-2.10 ./configure --enable-shared make -j 10 make install cp /usr/local/lib/*lzo* /usr/lib
安装完成后需要将 cp部分文件到/usr/lib中,这个步骤不做会抛 lzop: error while loading shared libraries: liblzo2.so.2: cannot open shared object file: No such file or directory
2.下载编译lzop
http://www.lzop.org/download/lzop-1.04.tar.gz
最新版选择 http://www.lzop.org/download/
tar -xvzf lzop-1.04.tar.gz cd lzop-1.04 ./configure make -j 10 make install
二、安装、编译hadoop-lzo-master
需在linux环境中安装,在windows上编译不过 wget https://github.com/twitter/hadoop-lzo/archive/master.zip
解压:
unzip master.zip cd hadoop-lzo-master/
编辑pom.xml修改hadoop的版本号与你集群中hadoop版本一致
<hadoop.current.version>2.9.3</hadoop.current.version>
检查所在主机是否有maven,如果没有需要安装,如下:
wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz tar -zxvf apache-maven-3.5.4-bin.tar.gz vim /etc/profile 添加环境变量:
MAVEN_HOME=/usr/local/apache-maven-3.5.4
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin 保存退出profile source /etc/profile
导入hadoop-lzo编译时需要路径信息
export CFLAGS=-m64 export CXXFLAGS=-m64 修改为自己hadoop的实际路径
export C_INCLUDE_PATH=/usr/local/hadoop-2.9.1/lzo/include export LIBRARY_PATH=/usr/local/hadoop-2.9.1/lzo/lib
maven编译安装
mvn clean package -Dmaven.test.skip=true
等待。。。
编译安装没有异常结束后往下继续 PS:如果在mvn这里出现异常,请解决后再继续
编译成功后会有target文件
cd target/native/Linux-amd64-64/ mkdir ~/hadoop-lzo-files
tar -cBf - -C lib . | tar -xBvf - -C ~/hadoop-lzo-files
在 ~/hadoop-lzo-files 目录下产生几个文件,执行cp
cp ~/hadoop-lzo-files/libgplcompression* $HADOOP_HOME/lib/native/
注意!!!上面这一步的cp文件也要同步到集群其他主机的hadoop的对应目录下
cp hadoop-lzo的jar包到hadoop目录
cp target/hadoop-lzo-0.4.21-SNAPSHOT.jar $HADOOP_HOME/share/hadoop/common/
注意!!!上面这一步的cp文件也要同步到集群其他主机的hadoop的对应目录下
三、配置hadoop配置文件
在hadoop的core-site.xml中添加
vim core-site.xml
<property>
<name>io.compression.codecs</name>
<value>org.apache.hadoop.io.compress.GzipCodec,
org.apache.hadoop.io.compress.DefaultCodec,
com.hadoop.compression.lzo.LzoCodec,
com.hadoop.compression.lzo.LzopCodec,
org.apache.hadoop.io.compress.BZip2Codec
</value>
</property>
<property>
<name>io.compression.codec.lzo.class</name>
<value>com.hadoop.compression.lzo.LzoCodec</value>
</property>
在mapred-site.xml中添加
vim mapred-site.xml
<property>
<name>mapred.compress.map.output</name>
<value>true</value>
</property>
<property>
<name>mapred.map.output.compression.codec</name>
<value>com.hadoop.compression.lzo.LzoCodec</value>
</property>
注意!!!上面修改的core-xite.xml与mapred-site.xml文件也要同步到集群其他主机的hadoop的对应目录下
最后重启集群!!!
检验是否成功
在hive中创建lzo格式的表
create table lzo-tmp(id int,name string) STORED AS INPUTFORMAT 'com.hadoop.mapred.DeprecatedLzoTextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat';
插入数据,并且可以selete到数据,说明成功,如果没有重启集群或者没有重新开启新的hive的client端的话可能会抛(当在hive中查询时)
Failed with exception java.io.IOException:java.io.IOException: No LZO codec found, cannot run
至此hadoop-lzo配置完成
hadoop-lzo 安装配置的更多相关文章
- Hadoop单机安装配置过程:
1. 首先安装JDK,必须是sun公司的jdk,最好1.6版本以上. 最后java –version 查看成功与否. 注意配置/etc/profile文件,在其后面加上下面几句: export JAV ...
- Hadoop的安装配置(一)
一.Hadoop的安装①Hadoop运行的前提是本机已经安装了JDK,配置JAVA_HOME变量②在Hadoop中启动多种不同类型的进程 例如NN,DN,RM,NM,这些进程需要进行通信 ...
- Hadoop简单安装配置
Hadoop开始设计以Linux平台为运行目标,所以这里推荐在Linux发行版比如Ubuntu进行安装,目前已经有Hadoop for Windows出来,大家自行搜下文章. Hadoop运行模式分为 ...
- Hadoop详细安装配置过程
步骤一:基础环境搭建 1.下载并安装ubuntukylin-15.10-desktop-amd64.iso 2.安装ssh sudo apt-get install openssh-server op ...
- Hadoop HA- zookeeper安装配置
安装集群 1.1 虚拟机: 3台安装好JDK的centos Linux虚拟机 1.2 安装包: 把下载好的zookeeper安装包,官网:http://mirror.bit.edu.cn/apache ...
- 【大数据】Hadoop单机安装配置
1.解压缩hadoop-2.7.6.tar.gz到/home/hadoop/Soft目录中 2.创建软链接,方便hadoop升级 ln -s /home/hadoop/Soft/hadoop-2.7 ...
- hadoop搭建杂记:Linux下hadoop的安装配置
VirtualBox搭建伪分布式模式:hadoop的下载与配置 VirtualBox搭建伪分布式模式:hadoop的下载与配置 由于个人机子略渣,无法部署XWindow环境,直接用的Shell来操作, ...
- hadoop的安装配置
资源下载路径:https://archive.cloudera.com/cdh5/cdh/5/:https://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0 ...
- Docker Hadoop LAMP安装配置教程
以下教程来自九章算法. 1.How to install Dockerhttps://bupt.quip.com/YehSAR4qnGqB 2.How to set up hadoop environ ...
- Hadoop 单机安装配置
随机推荐
- 彻底理解lib和dll
转自:http://www.cppblog.com/amazon/archive/2009/09/04/95318.html 两种库:一种是LIB包含了函数所在的DLL文件和文件中函数位置的信息(入口 ...
- kudu基础入门
1.kudu介绍 1.1 背景介绍 在KUDU之前,大数据主要以两种方式存储: (1)静态数据: 以 HDFS 引擎作为存储引擎,适用于高吞吐量的离线大数据分析场景.这类存储的局限性是数据无法进行随机 ...
- 线程相关代码分析->常见面试题(一、Thead类)
As always,我们直接看jdk的代码切入: 首先是最简单的Runnable接口: public interface Runnable { public abstract void run(); ...
- RedHat 7.3 Oracle 12.2.0.1 RAC 安装手册(转)
1 准备工作 1.1 关于GRID的一些变化 1.1.1 简化的基于映像的Oracle Grid Infrastructure安装 从Oracle Grid Infrastructure 12 ...
- Node.js实战(六)之Npm
NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从NPM服务器下载并 ...
- WebView之加载网页时增加进度提示
上一节讲了一些webview的基本使用以及在记载网页时如何屏蔽掉第三方浏览器,使我们自己开发的程序成为一个微型浏览器.那么这一节将一下在webView加载网页的过程中如何加上进度提示.效果图如下: 主 ...
- Android调用系统的打电话和发短信界面(1.将消息内容带过去2.实现群发)
package com.example.myapi.sms; import android.app.Activity; import android.content.Intent; import an ...
- C# 取两个集合的交集\并集\差集
交集:Intersect 并集:Union 差集:Except , , , , , }; , , , ,,, }; var C= A.Intersect(B); //交集 { 3, 4, 5, 6 } ...
- 学会如何使用Github进行托管代码和用markdown撰写心得
这次作业是学会如何使用Github进行托管代码和用markdown撰写心得. 1.掌握使用Git进行代码版本,使用github进行代码托管.(git使用,推荐imooc公开课: 公开课 ) 登录 gi ...
- python中安装Tensorflow
执行命令:pip install --upgrade tensorflow 即可.