在hadoop中使用mapreduce处理压缩的XML文件



我有一个这样的文件结构。

a.zip包含a1.zip、a2.zip和a3.zip,每个压缩文件都有一个XML文件。

我需要处理这些xml文件。目前我提取压缩文件从.zip,将它们存储在hdfs和运行一个MR作业来处理a1.zip, a2.zip .....使用自定义输入格式和记录阅读器。

谁能帮我一个更好的解决方案,我不需要解压缩a.p zip,仍然并行处理文件

你为什么不写一个可以从主程序调用的普通java预处理器类呢?步骤如下:

1)预处理器类将以编程方式将a.p zip文件提取到临时位置。

2)以编程方式将子zip类添加到hdfs。

3)按照您现在所做的方式启动XML处理。

4)如果您愿意,您可以扩展预处理器类来直接放置XML,这样您可以使XML处理程序更简单。

如果有什么不清楚的地方请告诉我。

相关内容

  • 没有找到相关文章

最新更新