2015-06-26 29 views
0

我正在使用hadoop map-reduce。我必须处理来自.xml文件的数据,解析它并将输出存储到数据库中。
为什么XmlInputFormat不是由hadoop提供的?

虽然这方面的工作时,我需要通过我的XML映像器,我发现XmlInputFormat.class没有被默认的Hadoop提供的,我们必须使用象夫的它XmlInputFormat

我想知道Xml何时被广泛使用,为什么hadoop没有提供这个XmlInputFormat而不是明确地创建定制的XmlInputFormat bye,为它延长TextInputFormat

回答

1

尽管xml被广泛使用,提供了一种针对某种技术的特殊功能的框架,但这可能不是一个好主意。这可能就像是背书。在高层次上,Mapreduce被设计为接受不同的格式。事实上,现在json由于与xml相比的尺寸特征而被广泛使用。即使我有类似的问题。

但其由用户来决定地图的输入减少,并且可以使用,不同的解析器(杰克逊或GSON为JSON和JAXB为XML),如果他们是在一个单一的线路或类似上面使用RecordReader实施

+0

感谢您的宝贵意见。但是对于JSON,在java中也有提供,因此我对mapreduce很感兴趣,因为大部分时间数据都是json或xml格式。但是你给出的描述非常确定。 – Nakul91

+0

Ya,json和xml是独立的,像python和java这样的语言需要与它们交互,因此我们分别使用Jackson和jaxb来分别使用json和xml。所以像hadoop这样的框架给出了使用RecordReader概念处理它们的相同选项。希望我在这方面帮助你。快乐学习 – Ramzy

相关问题