我被MapReducereduce
的输出应该是什么弄糊涂了。
根据最初的Jeff Dean和Sanjay Ghemawat paper第2.2节,它应该是
reduce (k2,list(v2)) → list(v2)
但根据Hadoop tutorial部分Inputs and Outputs
和oreilly book,它是(K3, V3)
的列表
那么有什么不同呢?它们本质上是一样的还是不一样的?
我被MapReducereduce
的输出应该是什么弄糊涂了。
根据最初的Jeff Dean和Sanjay Ghemawat paper第2.2节,它应该是
reduce (k2,list(v2)) → list(v2)
但根据Hadoop tutorial部分Inputs and Outputs
和oreilly book,它是(K3, V3)
的列表
那么有什么不同呢?它们本质上是一样的还是不一样的?
1条答案
按热度按时间busg9geu1#
事实上,MapReduce作业的输出是一些文件,每个文件都是由Reducer生成的,并且每个生成的文件都是我们在Reducer(...)中创建的(键、值)对的列表通过调用上下文来调用函数,写入(...)
为了得到更多提醒,我们在执行作业之前定义了这些键和值对象的类型
job.setOutputKeyClass(class...);
job.setOutputValueClass(class...);