我想使用mapreduce生成一些数据。我想使用一个参数N调用作业,并使用从1到N的每个整数调用Map一次。
显然我想要一个Mapper<IntWritable, NullWritable, <my output types>>
...这很简单。但是我不知道如何生成输入数据!我没有看到InputFormat
,可以直接从集合中提取键和值吗?
最佳答案
是否要每个映射器处理从1到N的所有整数?还是要在同时运行的映射器之间分配整数1到N的处理?
如果是前者,我相信您需要创建一个自定义InputFormat。如果是后者,最简单的方法可能是生成一个文本文件,该文件的整数从1到N,每个整数在一行上,然后使用LineInputFormat。