分3步完成
1.需要使用root安装liblzo动态链接库
#root
cp ./lib64/liblzo2.so.2.0.0 /lib64
cd /lib64/
ln -s liblzo2.so.2.0.0 liblzo2.so
ln -s liblzo2.so.2.0.0 liblzo2.so.2
--检查下是否拷贝进去了
ls -l /lib64|grep lzo|wc -l
3
2.hive用户安装gpl jar包和本地库
su - username
--jar
cp ./hadoop-gpl-compression-0.1.0-dev.jar $HADOOP_HOME/lib
-- local library
cp ./Linux-amd64-64.tar $HADOOP_HOME/lib/native
cp ./Linux-i386-32.tar $HADOOP_HOME/lib/native
cd $HADOOP_HOME/lib/native
tar -xf Linux-amd64-64.tar
tar -xf Linux-i386-32.tar
ls -l Linux-amd64-64|wc -l
ls -l Linux-i386-32|wc -l
3.修改两个配置文件
cd $HADOOP_CONF_DIR
修改hadoop配置文件 $HADOOP_CONF_DIR/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,org.apache.hadoop.io.compress.BZip2Codec</value>
</property>
<property>
<name>io.compression.codec.lzo.class</name>
<value>com.hadoop.compression.lzo.LzoCodec</value>
</property>
修改hadoop配置文件 $HADOOP_CONF_DIR/mapred-site.xml (包含慢启动)
<property>
<name>mapred.reduce.slowstart.completed.maps</name>
<value>0.3</value>
</property>
<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>
分享到:
相关推荐
在Hadoop环境中,LZO的使用通常与Hadoop的MapReduce框架相结合,通过设置Hadoop配置参数,如`mapred.compress.map.output`和`mapreduce.output.fileoutputformat.compress.codec`,可以指定使用LZO作为数据压缩编码...
- 使用LZO压缩可以提高数据传输效率,但测试中发现可能受机器资源分配不一致影响。 - 调度算法测试比较了无调度、Fair Scheduler和Capacity Scheduler三种策略,结果表明,不同调度算法对性能有明显影响。 4. **...
- **兼容性与可扩展性**:虽然主要采用C++实现,但HCE保持了与Hadoop生态系统的兼容性,用户可以无缝切换到C++环境进行数据处理,同时保留了高度的定制化能力,满足不同场景的具体需求。 综上所述,Hadoop C++扩展...
Reduce阶段则对中间数据进行汇总处理。 在“MapReduce数据分析实战”中,作者李立松通过自己的经验分享了使用MapReduce进行数据分析的实践案例,尤其是如何通过Hadoop这一开源框架来实施MapReduce计算。 首先,...
- 通过压缩中间数据(`mapred.compress.map.output`)减少磁盘I/O操作和网络传输数据量。 - 配置合适的Shuffle参数,如`io.sort.mb`、`io.sort.spill.percent`等,以提高Shuffle过程的效率。 ### 知识点三:Hive与...
首先,shuffle(洗牌)过程是MapReduce作业中一个核心的内部机制,它的主要任务是将map任务产生的中间结果按照key进行分区和排序,以便reduce任务能够有效地处理这些数据。shuffle这个名字来源于它在数据处理中的...
工程只做数据压缩,至于MR中间结果压缩减少网络IO,只需要配置 mapred-site.xml 即可,网上资料很多。 工程只实现了lzo的压缩逻辑,需要前置条件:部署lzo环境 更多参考 工程不够强大,目前利用 hadoop api 按目录...
4. **数据压缩**: - Hadoop支持LZO、Gzip和Snappy等压缩算法,SequenceFile和Parquet格式可提高压缩效率。 5. **Hive与数据库交互**: - Hive利用HDFS存储数据,通过MapReduce处理查询,元数据存储在MySQL或其它...
- MapTask对中间结果进行分区、排序和缓存。 - ReduceTask按需从MapTask拉取数据。 - 这一阶段涉及网络传输、排序和归并操作。 **13. Shuffle阶段的数据压缩机制** - MapReduce支持多种压缩编码,如Gzip、LZO等。 ...