我们已经意识到将GZip格式的文件归档用于Hadoop处理并不是一个好主意.GZip不可拆分,以供参考,以下是我不会重复的问题:
我的问题是:BZip2是最好的归档压缩,它允许Hadoop并行处理单个归档文件吗?Gzip肯定不是,从我的阅读LZO有一些问题.
我是hadoop的新手,并试图处理维基百科转储.它是一个6.7 GB的gzip压缩xml文件.我读到hadoop支持gzip压缩文件,但只能由mapper在单个作业上处理,因为只有一个映射器可以解压缩它.这似乎限制了处理.还有其他选择吗?比如将xml文件解压缩并拆分成多个块并用gzip重新压缩它们.
我从http://researchcomputing.blogspot.com/2008/04/hadoop-and-compressed-files.html上读到了关于hadoop gzip的内容.
谢谢你的帮助.
我最近一直在研究hadoop和HDFS.将文件加载到HDFS时,它通常会将文件拆分为64MB块,并在群集周围分发这些块.除非gzip文件无法执行此操作,因为无法拆分gzip文件.我完全理解为什么会这样(我不需要任何人解释为什么gzip文件不能拆分).但是为什么HDFS不能将纯文本文件作为输入并像普通文件一样拆分,然后分别使用gzip压缩每个拆分?访问任何拆分时,它只是在运行中解压缩.
在我的方案中,每个拆分都是完全独立压缩的.拆分之间没有依赖关系,因此您不需要整个原始文件来解压缩任何一个拆分.这是该补丁采用的方法:https://issues.apache.org/jira/browse/HADOOP-7076,请注意,这不是我想要的.
这似乎很基本......我错过了什么?为什么不能这样做?或者如果可以做到,为什么hadoop开发人员不会忽视这条路线?考虑到我发现有多少人想要在HDFS中分割gzip文件,这似乎很奇怪.