Taiwan Hadoop Forum

台灣 Hadoop 技術討論區
現在的時間是 2022-07-02, 12:35

所有顯示的時間為 UTC + 8 小時




發表新文章 回覆主題  [ 2 篇文章 ] 
發表人 內容
 文章主題 : bz2压缩文件作为输入为什么不能分片?
文章發表於 : 2013-09-17, 10:19 
離線

註冊時間: 2013-06-19, 11:53
文章: 4
hadoop的blocksize是256mb。
输入文件是以可分片的bz2格式压缩的,平均每个文件有1-2G的大小,
可为什么使用mapred和hive读取时,系统默认每一个压缩文件只启一个map,导致locality非常低?
Launched map tasks 0 0 144
Data-local map tasks 0 0 24
Rack-local map tasks 0 0 120

输入文件生成时的压缩配置:
conf.set("mapred.compress.map.output","true");
conf.set("mapred.map.output.compression.code","org.apache.hadoop.io.compress.SnappyCodec");
conf.set("mapred.output.compress","true");
conf.set("mapred.output.compression.type","BLOCK");
conf.set("mapred.output.compression.codec","org.apache.hadoop.io.compress.BZip2Codec");


回頂端
 個人資料 E-mail  
 
 文章主題 : Re: bz2压缩文件作为输入为什么不能分片?
文章發表於 : 2013-09-17, 11:15 
離線

註冊時間: 2009-11-09, 19:52
文章: 2897
chenrla 寫:
hadoop的blocksize是256mb。
输入文件是以可分片的bz2格式压缩的,平均每个文件有1-2G的大小,
可为什么使用mapred和hive读取时,系统默认每一个压缩文件只启一个map,导致locality非常低?
Launched map tasks 0 0 144
Data-local map tasks 0 0 24
Rack-local map tasks 0 0 120

输入文件生成时的压缩配置:
conf.set("mapred.compress.map.output","true");
conf.set("mapred.map.output.compression.code","org.apache.hadoop.io.compress.SnappyCodec");
conf.set("mapred.output.compress","true");
conf.set("mapred.output.compression.type","BLOCK");
conf.set("mapred.output.compression.codec","org.apache.hadoop.io.compress.BZip2Codec");


要看 InputFormat 如何看待 Bzip2 的檔案,也就是 isSplittable() 回傳為 true 或 false
http://hadoop.apache.org/docs/current/api/org/apache/hadoop/mapred/FileInputFormat.html
因此,許多案例會改用 LZO 線性壓縮法。
http://blog.cloudera.com/blog/2009/06/parallel-lzo-splittable-compression-for-hadoop/
http://blog.cloudera.com/blog/2009/11/hadoop-at-twitter-part-1-splittable-lzo-compression/

其次,您用的 conf.set 設定的都是針對 mapper output 的壓縮。
跟 mapper input 壓縮法無關。

供參考~

- Jazz


回頂端
 個人資料 E-mail  
 
顯示文章 :  排序  
發表新文章 回覆主題  [ 2 篇文章 ] 

所有顯示的時間為 UTC + 8 小時


誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 2 位訪客


不能 在這個版面發表主題
不能 在這個版面回覆主題
不能 在這個版面編輯您的文章
不能 在這個版面刪除您的文章
不能 在這個版面上傳附加檔案

搜尋:
前往 :  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
正體中文語系由 竹貓星球 維護製作