Hadoop MapReduce读写序列文件

时间:2015-07-12 13:11:34

标签: java hadoop mapreduce

我正在尝试编写MapReduce作业,它可以在Mapper中读取两个序列文件。我试过在'main'中读取和写入一个序列文件,但我不知道如何在Mapper中进行。我认为我并不熟悉MapReduce的工作方式。谢谢你帮助我。

1 个答案:

答案 0 :(得分:0)

如果一切正确,在main()方法中你写了类似的东西:

 FileInputFormat.addInputPath()
 FileOutputFormat.setOutputPath()

告诉Hadoop目录在哪里找到你的两个输入文件以及在哪里写出计算结果。

当作业开始时,Hadoop开始读取它在输入目录中找到的文件,并调用mapper的map()方法将文件的每一行(当时一个)作为参数传递给它。 在计算结束时,当reducer发出其数据时,Hadoop将把结果写入指定输出目录中的一个(或多个)文件。

因此,映射器和reducer不需要知道有关输入/输出文件的任何信息。