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

zy1mlcev  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(263)

我有这样的文件结构。
a、 zip包含a1.zip、a2.zip、a3.zip,然后这些压缩文件中的每个压缩文件都有一个xml文件。
我需要处理这些xml文件。目前,我正在从a.zip中提取压缩文件,将它们存储在hdfs中,并运行mr作业来处理a1.zip、a2.zip。。。。。使用自定义输入格式和记录阅读器。
谁能帮我一个更好的解决方案,我不必解压a.zip,仍然并行处理文件。

krcsximq

krcsximq1#

为什么不编写一个普通的java预处理器类,可以从主程序调用它呢。步骤如下:
1) 预处理器类将以编程方式将a.zip文件提取到临时位置。
2) 以编程方式将子zip类添加到hdfs。
3) 以现在的方式启动xml处理。
4) 如果愿意,可以扩展pre-processor类来直接放置xml,这样可以使xml处理程序更简单。
如果这里有什么不清楚的地方,请告诉我。

相关问题