hadoop-2.7.2+hive 2.0.0采用LZO压缩的坑好深

原创 2016年03月24日 00:03:32

hadoop-2.7.2都出来了,话说可以在生产环境应用了,一通体验下来,让人要崩溃了!

我前2年写了几篇Hadoop-2.2.0+QJM HA + hive + LZO的博客,到目前为止在hadoop-2.7.2版本下依然是那么正确!呵呵,废话一把!

Hadoop2.2.0使用之初体验

Hadoop2.2.0基于QJM的HA实践

Hadoop2.2.0+hive使用LZO压缩那些事

上述(1)、(2)基本没有变化,(3)也没啥变化,我倒是在(3)上栽大跟头了,3天下来就是想不通,怎么Hive下就是LZO文件不分片,虽说最后看来还是自己太2了,总之就在这里记述下,下不为例。


一、SSH免密码登录

这个本来比较烦人的,步骤简单,但是机器一多久让人发毛了,毕竟没有自动化啊!后来就想了个办法,在各机器上都执行:ssh-keygen -t rsa,再把各机器上生成的id_rsa.pub文件都下载下来,在windows的文本编辑器下完成合并,在把合并后的文件又上传到各Hadoop节点上,作为authorized_keys,授予644权限。

话说为了避免ssh 的第一次的时候,那种恼人的步骤出现,也可以将各节点的known_hosts 文件也用同上办法来搞定。

话说,这种做法绝对是省时间、降血压的大招。

二、LZO和LZOP的安装

现在网上的各种Hadoop安装教程,基本都是类似下面这样的千人一面了。

安装LZO

wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.06.tar.gz
tar -zxvf lzo-2.06.tar.gz 
./configure -enable-shared -prefix=/usr/local/hadoop/lzo/
make && make test && make install

安装LZOP
wget http://www.lzop.org/download/lzop-1.03.tar.gz
tar -zxvf lzop-1.03.tar.gz 
./configure -enable-shared -prefix=/usr/local/hadoop/lzop
make  && make install

烦不烦啊,各种Linux版本不是都有自己的package管理工具,比如centos 下的yum,为毛还要自己去找源代码,自己去编译呢?

直接yum install lzo lzop -y 不就什么都搞定了吗!!!!


三、Hadoop用LZO压缩

LZO这东西,和bzip2等还真不一样,没法知道靠谱不靠谱,也说不定Linux下直接执行命令,可以压缩和解压缩,但是就在Hadoop中不工作。

话说,肯定要保证在Linux上直接可以用lzop来压缩与解压缩才行,这个是基础。当然这个不全对,至于为什么不对,先就不说了!

直接把hive-2.0.0套上后,建表,加载数据等,再就是直接select count(*) from xxx,能有个数字结果的话,好歹hadoop上的LZO是支持了。


四、hive-2.0.0变天了

我就是栽倒在这里了。一句话,hive-2.0.0没法应用到LZO文件的分片,无论多大的文件,都还是当成一个再来该干嘛干嘛!话说,hadoop-lzo.jar根本就没有被用到,当然没有这个,提交JOB的时候就会错了,但是真的等到JOB+TASK都跑的时候,LZO文件就不分片了。

hive-2.0.0相比之前的版本已经大变样 了!


五、hadoop的压缩

本次就是比较了一下bzip2 、LZO两种。

LZO真的压缩和解压缩好快好快,毛病就是压缩后的文件还是很大,以nginx的access.log来计算的话,压缩率介于1/3 ~1/2之间吧,一个12G的文件,压缩后为5G上线,时间在20秒上下。

bzip2的好处就是压缩率高,12G的文件,LZO后5G,bzip2后2G,不过别看它压缩率高,也支持分片,但是时间上会让发狂的。12G的nginx的访问日志文件,压缩一把要25分钟左右,解压缩要1.5分钟左右,和LZO没有比较余地了。

可以考虑把半年以前的数据都bzip2来压缩,毕竟这个用的少,压缩率也高,就算少量的用也能应付,不就是时间长点而已。LZO就存那种计算多,数据新的业务了。

hadoop2.6.0压缩方式lzo部署安装

Hadoop经常用于处理大量的数据,如果期间的输出数据、中间数据能压缩存储,对系统的I/O性能会有提升。综合考虑压缩、解压速度、是否支持split,目前lzo是最好的选择。LZO(LZO是Lempel...
  • slx_2011
  • slx_2011
  • 2015年03月30日 11:42
  • 1548

hadoop支持lzo完整过程

简介 部署 安装lzop native library 安装hadoop-lzo 配置hadoop环境变量 验证lzo通过hive测试 创建lzo表 导入数据 索引LZO文件 利用hive执行mr任务...
  • meiyuli
  • meiyuli
  • 2015年12月21日 19:49
  • 3879

Hadoop2.2.0+hive使用LZO压缩那些事

废话不多说,我在apache Hadoop2.2.0测试集群上配置支持使用LZO进行压缩的时候,遇到很多坑,不过最后到搞定了,这里把具体过程记录下来,以供参考。 环境: Centos6.4 64位 H...
  • zhangzhaokun
  • zhangzhaokun
  • 2013年12月27日 00:02
  • 10674

hadoop, hive 启用LZO压缩

http://www.cnblogs.com/bruthe/articles/4554787.html 做笔记,非常感谢原作者。 1   sudo apt-get install l...
  • zhoudetiankong
  • zhoudetiankong
  • 2016年01月18日 17:58
  • 878

Hive压缩说明

Hive压缩使用
  • xsdxs
  • xsdxs
  • 2016年11月13日 21:50
  • 2574

hive数据压缩

转载:http://itindex.net/detail/47472-%E5%AD%A6%E4%B9%A0-programing-hive Hive使用的是Hadoop的文件系统和文件格式,比如TE...
  • An342647823
  • An342647823
  • 2015年04月17日 11:15
  • 4098

Hadoop2.2.0+hive使用LZO压缩那些事

废话不多说,我在apache Hadoop2.2.0测试集群上配置支持使用LZO进行压缩的时候,遇到很多坑,不过最后到搞定了,这里把具体过程记录下来,以供参考。 环境: Centos6.4 64位 H...
  • zhangzhaokun
  • zhangzhaokun
  • 2013年12月27日 00:02
  • 10674

hadoop,hive启用lzo压缩和创建lzo索引

启用lzo压缩对于小规模集群还是很有用的,压缩比率大概能达到原始日志大小的1/3。同时解压缩速度也比较快,Hadoop原生是支持gzip和bzip2压缩的,这两种压缩虽然压缩比率比lzo更大,但是在做...
  • hit_hlj_sgy
  • hit_hlj_sgy
  • 2013年10月15日 00:10
  • 1200

Hadoop使用lzo格式-问题汇总

Hadoop使用lzo格式-问题汇总
  • wisgood
  • wisgood
  • 2013年12月02日 20:46
  • 7550

Hadoop2.2.0+hive使用LZO压缩那些事

废话不多说,我在apache Hadoop2.2.0测试集群上配置支持使用LZO进行压缩的时候,遇到很多坑,不过最后到搞定了,这里把具体过程记录下来,以供参考。 环境: Centos6.4 64位 H...
  • zhangzhaokun
  • zhangzhaokun
  • 2013年12月27日 00:02
  • 10674
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:hadoop-2.7.2+hive 2.0.0采用LZO压缩的坑好深
举报原因:
原因补充:

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