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