为什么hadoop不提供XmlInputFormat?

Why XmlInputFormat is not provided by hadoop?

我正在使用 hadoop map-reduce。我必须处理来自 .xml 文件的数据,解析它并将输出存储到数据库中。

当我需要将我的 xml 传递给映射器时,我发现 hadoop 默认不提供 XmlInputFormat.class,我们必须使用 mahout 的XmlInputFormat 给它。

我想知道 Xml 何时被广泛使用,为什么 hadoop 没有为此提供 XmlInputFormat 而不是显式创建自定义 XmlInputFormat 再见扩展 TextInputFormat为了它?

好吧,即使 xml 被广泛使用,为技术提供具有特殊功能的框架也可能不是一个好主意。这可能就像一种背书。在高层次上,Mapreduce 旨在接受不同的格式。事实上,与 xml 相比,json 由于其尺寸特征而被广泛使用。甚至我也有类似的问题。

但是由用户决定 map reduce 的输入并且可以使用不同的解析器(json 的 Jackson 或 gson 和 xml 的 JAXB)如果它们在一行中或像上面那样使用 RecordReader 实现