hadoop lzo应用


几种压缩方式对比:

LZO example:

https://github.com/twitter/hadoop-lzo/blob/master/src/test/java/com/hadoop/mapreduce/TestLzoTextInputFormat.java

给lzo文件加索引的目的是为了让lzo支持 splitable, 这样hadoop可以并行处理, 所以这一步很关键, 生成的文件后缀.index

注意,对于建立了索引的lzo文件,如果不把inputformat设置为LzoTextInputFormat,会把索引文件也当做是输入文件。

 

mapreduce版本的 创建索引的工具 DistributedLzoIndexer

从类名DistributedLzoIndexer可以看出是通过mapreduce分布式程序来建立索引的。

两个程序运行成功之后,都会在hdfs目录/hdfs/path/to/下生成一个索引文件file.lzo.index。

 

如果没有索引,lzo文件也是可以处理的,mapreduce会根据后缀名“.lzo”来对lzo文件解压,并且inputformat也不需要特别指定,但是不支持分块,整个lzo文件只用一个map来处理。

hadoop-lzo包本身提供了建立lzo索引的类,可以在本地运行程序建立索引,也可以运行mapreduce程序建立索引。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM