写了一些MR后发现不管是别人写的还是官方给的,比如map方法,变量都是定义在方法外面。

MR-为什么MR类的变量喜欢定义在方法外面?

因为之前都是照猫画虎的写的,所以自己也一直这么写,可是为什么呢?

我试了试定义在方法里面,程序照样跑,试了几个程序都是这样。


可能是自己之前对MR的运行过程了解的不是很详细,看父类Mapper和Reducer才知道,程序分发到一个节点后运行mapper类时初始一次,之后N次的map执行都是调用的map方法,所以这样写应该只是一种较优的写法而已。

就像某一个车间一个任务交给只初始一个人(map类)来做,N个加工品就不断让一双手(map方法)重复进出操作。

MR-为什么MR类的变量喜欢定义在方法外面?


 

以上只是我的猜测,希望有大拿喷我来订正。


 

相关文章:

  • 2022-12-23
  • 2022-01-22
  • 2021-08-24
  • 2022-12-23
  • 2021-08-09
  • 2021-08-22
  • 2022-01-02
  • 2021-08-06
猜你喜欢
  • 2021-11-27
  • 2021-06-06
  • 2022-12-23
  • 2021-11-02
  • 2022-01-03
  • 2021-05-21
  • 2021-09-18
相关资源
相似解决方案