hadoop2.2支持snappy压缩安装及配置

原创 2013年12月04日 15:36:18

折腾好久,刚才搞定,做个笔录!

由于我们的生产环境没有root用户使用权限,且为了不在所有主机上安装一些依赖插件,因此我启用了使用hadoop native本地库,即在core-site.xml中配置了:

<property>
        <name>hadoop.native.lib</name>
        <value>true</value>
</property>

就因为这个配置,导致按照网上的方式不成功,灵机一动想到这点,才将问题解决,下面详细介绍,基于google snappy官方介绍https://code.google.com/p/hadoop-snappy/,我稍微做下改动,这个改动也是因为启用 native本地库才做的改动。

1. Requirements: gcc c++, autoconf, automake, libtool, Java 6, JAVA_HOME set, Maven 3

yum install  gcc c++, autoconf, automake, libtool

jdk,我使用的是java7,配置环境变量就可
maven,下载tar.gz包解压后设置环境变量可直接使用

2. Build/install Snappy (http://code.google.com/p/snappy/)

解压后configure && make && make install

3. Build Hadoop Snappy

$ mvn package 

4.拷贝编译好的文件到hadoop环境

$cp -r /opt/hadoop-snappy-master/target/hadoop-snappy-0.0.1-SNAPSHOT-tar/hadoop-snappy-0.0.1-SNAPSHOT/lib/hadoop-snappy-0.0.1-SNAPSHOT.jar $HADOOP_HOME/lib/
$cp -r /opt/hadoop-snappy-master/target/hadoop-snappy-0.0.1-SNAPSHOT-tar/hadoop-snappy-0.0.1-SNAPSHOT/lib/native/Linux-i386-32/* $HADOOP_HOME/lib/native/

5.修改配置文件core-site.xml

<property>
        <name>io.compression.codecs</name>
        <value>
          org.apache.hadoop.io.compress.GzipCodec,
          org.apache.hadoop.io.compress.DefaultCodec,
          org.apache.hadoop.io.compress.BZip2Codec,
          org.apache.hadoop.io.compress.SnappyCodec
        </value>
</property>

6.修改配置文件mapred-site.xml(我只是增加了下面的一项,还有一项可配置mapreduce.output.fileoutputformat.compress)

  <property>
    <name>mapreduce.map.output.compress</name>
    <value>true</value>
  </property>

  <property>
    <name>mapreduce.map.output.compress.codec</name>
    <value>org.apache.hadoop.io.compress.SnappyCodec</value>
  </property>

7.重启yarn和hdfs

8.实验

hadoop jar ./hadoop-mapreduce-examples-2.2.0.jar wordcount hdfs://node1:8020/input hdfs://node1:8020/output2(wordcount程序,都知道怎么用吧?)

如果不报错,证明就安装成功了。


相关文章推荐

hadoop 压缩-snappy

---1. snappy 下载安装Apache hadoop-1.2.1后,在运行wordcount 时报警告 WARN snappy.LoadSnappy: Snappy native libra...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

配置Snappy压缩

1. 功能说明使用snappy压缩来提升mapreduce和hbase的性能。其实就是用CPU换IO吞吐量和磁盘空间。配置并使用snappy有如下几点要求: 首先需要hadoop集群的nat...

centos中Hadoop2.7.1 hbase1.3编译snappy

一、准备编译所需组件: 1. hadoop-2.7.1-src.tar.gz, 官网自行下载 2. snappy-1.1.3.tar.gz,wget https://github.com/goog...

hadoop2.4 支持snappy

我们hadoop2,4集群默认不支持snappy压缩,但是最近有业务方说他们的部分数据是snappy压缩的(这部分数据由另外一个集群提供给他们时就是snappy压缩格式的)想迁移到到我们集群上面来进行...

hadoop2.x配置 - 启用snappy

Snappy是一个压缩/解压缩库。它的压缩率并非最高,但是它在保证一定压缩率情况下,压缩及解压缩速度非常快。基于以上特点,Snappy非常适合用于Hadoop MapReduce中间数据压缩。Snap...

hadoop源码编译:支持snappy压缩

hadoop源码编译:支持snappy压缩      在大数据的情况下,数据量都是特别的大,有时候呢,我们想把数据进行压缩之后在进行处理,这样呢可以大幅度的减少磁盘的IO而且还可以减少网络传输的压...

编译hadoop支持snappy压缩

kylin在build cube时出现hadoop不支持snappy压缩的问题,原因是Hadoop的二进制安装包中没有snappy支持,需要手工重新编译。 编译过程: 1. 安装包列表 sn...

重新编译Hadoop 2.7.2 native以支持snappy

问题提出: 在运行kylin sample时出现以下错误: org.apache.hadoop.hive.ql.metadata.HiveException: native snappy librar...
  • wzy0623
  • wzy0623
  • 2016年04月27日 17:43
  • 4267
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:hadoop2.2支持snappy压缩安装及配置
举报原因:
原因补充:

(最多只允许输入30个字)