在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 安装配置的更多相关文章

  1. Hadoop单机安装配置过程:

    1. 首先安装JDK,必须是sun公司的jdk,最好1.6版本以上. 最后java –version 查看成功与否. 注意配置/etc/profile文件,在其后面加上下面几句: export JAV ...

  2. Hadoop的安装配置(一)

    一.Hadoop的安装①Hadoop运行的前提是本机已经安装了JDK,配置JAVA_HOME变量②在Hadoop中启动多种不同类型的进程        例如NN,DN,RM,NM,这些进程需要进行通信 ...

  3. Hadoop简单安装配置

    Hadoop开始设计以Linux平台为运行目标,所以这里推荐在Linux发行版比如Ubuntu进行安装,目前已经有Hadoop for Windows出来,大家自行搜下文章. Hadoop运行模式分为 ...

  4. Hadoop详细安装配置过程

    步骤一:基础环境搭建 1.下载并安装ubuntukylin-15.10-desktop-amd64.iso 2.安装ssh sudo apt-get install openssh-server op ...

  5. Hadoop HA- zookeeper安装配置

    安装集群 1.1 虚拟机: 3台安装好JDK的centos Linux虚拟机 1.2 安装包: 把下载好的zookeeper安装包,官网:http://mirror.bit.edu.cn/apache ...

  6. 【大数据】Hadoop单机安装配置

    1.解压缩hadoop-2.7.6.tar.gz到/home/hadoop/Soft目录中 2.创建软链接,方便hadoop升级  ln -s /home/hadoop/Soft/hadoop-2.7 ...

  7. hadoop搭建杂记:Linux下hadoop的安装配置

    VirtualBox搭建伪分布式模式:hadoop的下载与配置 VirtualBox搭建伪分布式模式:hadoop的下载与配置 由于个人机子略渣,无法部署XWindow环境,直接用的Shell来操作, ...

  8. hadoop的安装配置

    资源下载路径:https://archive.cloudera.com/cdh5/cdh/5/:https://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0 ...

  9. Docker Hadoop LAMP安装配置教程

    以下教程来自九章算法. 1.How to install Dockerhttps://bupt.quip.com/YehSAR4qnGqB 2.How to set up hadoop environ ...

  10. Hadoop 单机安装配置

随机推荐

  1. mysql5.7.24启动报错:ERROR 1862 (HY000): Your password has expired. To log in you must change it using a client that supports expired passwords.

    报错原因是:密码过期.不管你是刚刚修改密码还是什么,只要登陆都是有问题的,都是报这样子的错误. 解决方法是: 1.修改/etc/my.cnf文件,在[mysqld]下加入“skip-grant-tab ...

  2. T-SQL应用实例

    实验一:实验案例一(附加“练习用的可以附加的数据库--class”) 1.在products表中查询出厂日期晚于2014年4月的水果信息. select * from products  where  ...

  3. 陈远波(java)--Git 入门

    本章节讲解思路:1.在Git hup官网注册一个Git账号:2.下载git bash管理工具  3.在git bash上绑定GitHup账号密码: 一:进入GitHup官网:https://githu ...

  4. mnist手写数字检测

    # -*- coding: utf-8 -*- """ Created on Tue Apr 23 06:16:04 2019 @author: 92958 " ...

  5. laravel的Eloquent中的get()和Query/Builder中的get()

    Eloquent 中的get实际上是Eloquent/Builder中的get,得到的结果是个Collection对象,再调用Collection的first才得到collection中的一项,即一个 ...

  6. H5页面meta标签小结:

    <meta name="viewport" content="width=device-width,user-scalable=no"> <m ...

  7. Algorithms: 二叉平衡树(AVL)

    二叉平衡树(AVL):   这个数据结构我在三月份学数据结构结构的时候遇到过.但当时没调通.也就没写下来.前几天要用的时候给调好了!详细AVL是什么,我就不介绍了,维基百科都有.  后面两月又要忙了. ...

  8. [TJOI2013]拯救小矮人

    题目 首先有一个很假的贪心 我们定义一个人的需求为\(H-h_i-b_i\),就是这个人需要多少的高度在他下面他才能逃出去 我们趁剩余的高度还够,优先满足需求较高的 显然是错的,可能有一个人身高很高, ...

  9. MP实战系列(十)之SpringMVC集成SpringFox+Swagger2

    该示例基于之前的实战系列,如果公司框架是使用JDK7以上及其Spring+MyBatis+SpringMVC/Spring+MyBatis Plus+SpringMVC可直接参考该实例. 不过建议最好 ...

  10. OpenCV——Mat类的创建、复制、函数

    Mat类的创建: 方法一: 通过读入一张图像,直接转换为Mat对象 Mat image = imread("test.jpg"); 其中 imread()方法需要传入String类 ...