首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何读取压缩bz2 (bzip2)维基百科转储到用于hadoop map reduce的流xml记录阅读器

如何读取压缩bz2 (bzip2)维基百科转储到用于hadoop map reduce的流xml记录阅读器
EN

Stack Overflow用户
提问于 2011-07-18 03:50:38
回答 2查看 4.2K关注 0票数 6

我正在使用Hadoop Map Reduce对维基百科的数据转储(以bz2格式压缩)进行研究。由于这些转储文件太大(5T),所以我不能将xml数据解压到HDFS中,而只使用hadoop提供的StreamXmlRecordReader。Hadoop确实支持解压缩bz2文件,但它会任意拆分页面并将其发送到映射器。因为这是xml,所以我们需要拆分成一个标记。有没有什么办法可以一起使用内置的bz2解压和hadoop提供的stream xml记录阅读器?

EN

回答 2

Stack Overflow用户

发布于 2011-08-06 19:09:49

Wikimedia Foundation刚刚发布了一个用于Hadoop流接口的InputReader,它能够读取bz2压缩的完整转储文件并将其发送到您的映射器。发送到映射器的单元不是整个页面,而是两个修订版(因此您实际上可以对这两个修订版进行比较)。这是最初的版本,我相信会有一些错误,但请给它一个旋转,并帮助我们测试它。

此InputReader需要Hadoop0.21,因为Hadoop0.21具有对bz2文件的流式支持。源代码可以在https://github.com/whym/wikihadoop上找到。

票数 7
EN

Stack Overflow用户

发布于 2011-07-19 03:36:52

您的问题与所述的here相同。所以我的答案也是一样的,你应该在TextInputFormat上创建你自己的变体。在这里,您创建了一个新的RecordReader,它跳过行,直到它看到一个逻辑行的开始。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6726357

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档