使用mapreduce解析多个XML文件数据

时间:2014-10-30 06:45:55

标签: hadoop xml-parsing mapreduce hdfs

我想解析具有以下结构的多个XML文件

<parent tag property1='p1' xmlns:'sm link'>
<Tag 1> tag 1 value </Tag 1>
<Tag 2> tag 2 value </Tag 2>
<Tag 3>
<Tag 3.1> tag 3.1 value </Tag 3.1>
</Tag 3>
</parent tag>

我想写一个Map Reduce代码并将解析后的数据转储到HDFS(Hadoop 1.0)中。 另外,如何在一个实例中传递多个苍蝇。

任何帮助都会很好。 在此先感谢。

1 个答案:

答案 0 :(得分:0)

您可以使用mahaout的XmlInputFormat来读取XML数据。

在驱动程序类中设置这些配置设置。

conf.set("xmlinput.start","<root")` 
conf.set("xmlinput.end", "</root>");
job.setInputFormatClass(XmlInputFormat.class);

下载mahaout的jar文件。

将每个文件视为字符串,然后进行处理。

要将多个文件作为输入运行,请将所有文件放在一个文件夹中,并将输入路径作为文件夹路径。