我有这样的文件结构。a、 zip包含a1.zip、a2.zip、a3.zip,然后这些压缩文件中的每个压缩文件都有一个xml文件。我需要处理这些xml文件。目前,我正在从a.zip中提取压缩文件,将它们存储在hdfs中,并运行mr作业来处理a1.zip、a2.zip。。。。。使用自定义输入格式和记录阅读器。谁能帮我一个更好的解决方案,我不必解压a.zip,仍然并行处理文件。
krcsximq1#
为什么不编写一个普通的java预处理器类,可以从主程序调用它呢。步骤如下:1) 预处理器类将以编程方式将a.zip文件提取到临时位置。2) 以编程方式将子zip类添加到hdfs。3) 以现在的方式启动xml处理。4) 如果愿意,可以扩展pre-processor类来直接放置xml,这样可以使xml处理程序更简单。如果这里有什么不清楚的地方,请告诉我。
1条答案
按热度按时间krcsximq1#
为什么不编写一个普通的java预处理器类,可以从主程序调用它呢。步骤如下:
1) 预处理器类将以编程方式将a.zip文件提取到临时位置。
2) 以编程方式将子zip类添加到hdfs。
3) 以现在的方式启动xml处理。
4) 如果愿意,可以扩展pre-processor类来直接放置xml,这样可以使xml处理程序更简单。
如果这里有什么不清楚的地方,请告诉我。