我想要加载并解析一些 PB 级的 XML 数据。在对如何在 hadoop 中处理 XML 进行了大量研究之后,我发现 XML 必须在 Map Reduce 中作为整个文件进行处理。
如果我将整个 XML 作为单个输入拆分提供给我的 MapReduce,那么它将不会利用 hadoop 的分布式并行处理功能,因为只有一个 Mapper 会进行处理。
我理解正确吗?如何克服这个问题?
请提出建议
最佳答案
您可以尝试使用 Mahout 的 XMLInputFormat 。 XMLInputFormat 负责使用指定的开始和结束标记来确定 XML 输入文件中的记录边界。
你可以使用这个link作为如何使用 XMLInputFormat 解析 XML 文件的引用。
关于xml - 使用 Hadoop MapReduce 处理 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27519784/