Hive(22):snappy安装

本文详细介绍了如何通过编译、下载并替换Hadoop的lib,使用Snappy压缩库来提升MapReduce任务的性能。从解压压缩包、替换库文件到检查原生库支持情况,再到具体配置和运行WordCount示例,最后在Hive中进行测试,全面展示了Hadoop环境下优化MapReduce作业的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.压缩包

(1)编译

(2)下载

 2.解压缩

tar -zxvf native-2.7.3-snappy.tar.gz -C /opt/modules/

3.替换hadoop2.7.3的lib

cp /opt/modules/native/* ./native/

4.检查是否支持hadoop下

bin/hadoop checknative

结果:
Native library checking:
hadoop:  true /opt/modules/apache/hadoop-2.7.3/lib/native/libhadoop.so
zlib:    true /opt/modules/apache/hadoop-2.7.3/lib/native/libz.so.1
snappy:  true /opt/modules/apache/hadoop-2.7.3/lib/native/libsnappy.so.1
lz4:     true revision:99
bzip2:   false 
openssl: false Cannot load libcrypto.so (libcrypto.so: cannot open shared object file: No such file or directory)!

5.使用代码配置后,运行mapreduce的wordcount方法

(1)创建目录

bin/hdfs dfs -mkdir -p /user/hadoop2/mapreduce/wordcount/input

(2)上传文件

bin/hdfs dfs -put /opt/datas/wc.input /user/hadoop2/mapreduce/wordcount/input

(3)wordcount测试

bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /user/hadoop2/mapreduce/wordcount/input /user/hadoop2/mapreduce/wordcount/output2

(4).重新配置后运行mapreduce
    (a)点击刚刚运行的结果history-Configuration,搜索map.output,获得需要配置的属性

    (b)写代码(放在一行执行!)

bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount -Dmapreduce.map.output.compress=true -Dmapreduce.map.output.compress.codec=org.apache.hadoop.io.compress.SnappyCodec /user/hadoop2/mapreduce/wordcount/input /user/hadoop2/mapreduce/wordcount/output22

6.Hive中配置

(1)

set mapreduce.map.output.compress=true;

(2)

set mapreduce.map.output.compress.codec=org.apache.hadoop.io.compress.SnappyCodec;

(3)测试:然后跑

select count(*) from emp;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值