在hadoop mapreduce程序中是否必须使用mapper类

时间:2015-02-15 18:40:46

标签: hadoop mapreduce

我知道如果在驱动程序类中没有提到mapper类,它也将使用身份映射器以及同样的reducer。但是如果没有编写任何mapper类,谁将调用hdfs输入数据并处理它并发送到reducer。

1 个答案:

答案 0 :(得分:1)

Mapper类是必需的。正如您所说,如果您未在驱动程序中指定Mapper类,则将使用IdentityMapper。

  

但是如果没有编写任何mapper类,谁将调用hdfs输入数据并处理它并发送给reducer。

因此,如果您没有编写任何映射器类,IdentityMapper将处理输入数据(在驱动程序类中指定)并将其发送到reducer。

边缘情况:在某些情况下,mapper而不是读取输入数据会随机生成自己的数据,例如来自mapreduce示例的PiEstimator示例不读取输入数据,而是生成随机数据和将该数据传递给reducer's。同样TeraGen也是如此。