在处理自定义文件格式时,应如何编码InputFormat?

时间:2013-07-23 03:55:50

标签: java hadoop mapreduce

虽然这是一个更通用的问题,但我在这里找不到有关特定情况的详细帮助。我有大量的大尺寸文件(平均每个2GB)。这些文件包含以自定义格式编码的条目,必须由另一个库读取以解析为单个条目。现在我希望使用MapReduce来解析这些文件,但默认的InputFormat和InputSplit逐行处理文件,这不是我想要的。似乎我必须指定如何拆分文件(每个拆分应包含一些条目)以及如何生成记录(每个条目应映射到键/值>对)。

为了达到这个目的,我应该覆盖哪些方法?

1 个答案:

答案 0 :(得分:0)

这可以通过为此输入文件编写Custom InputFormat来完成 1.您应该设置拆分的开始和结束    1.1您可以设置行的起点和行尾 2.用于此分割的记录阅读器,用于读取分割内的记录。

以下是阅读XML的示例。这应该让你开始。 XML File Processing