mapred-site.xml中mapreduce.framework.name的classic,local有什么区别?

时间:2014-11-01 07:14:02

标签: hadoop mapreduce yarn

此参数的官方说明如下:

The runtime framework for executing MapReduce jobs. Can be one of local, classic or yarn.

我知道值'yarn'适用于MRv2,它会将mapreduce作业提交给resourcemanager。但是本地和经典有什么区别?哪一个对应MRv1?

非常感谢!

2 个答案:

答案 0 :(得分:4)

你是对的,"纱线"代表MRv2。 "经典"适用于MRv1和"本地"用于本地运行的MR作业。但为什么你需要MRv1?纱线现在不在测试阶段,它比旧的MRv1框架更稳定,而你的MapReduce作业仍然可以使用旧的" mapred" API

答案 1 :(得分:1)

我同意上述答案,我想补充一点。

经典是MR1,每当我们使用框架名称作为经典提交MR作业时,Job将被提交给MR1中的Jobtracker守护程序,它将协调mapreduce执行,每个任务将在不同的JVM中执行

本地JobRunner的主要目的是使用小输入调试/测试mapreduce程序。它不需要JobTracker,TaskTracker等任何守护进程。当您从 eclipse 执行任何MR应用程序时,此执行模式非常有用,默认执行将在本地jobrunner中执行(使用与eclipse使用相同的JVM)。所有mapper / reduce都将执行相同的JVM。由于同一个JVM用于所有执行(Driver + Map + Reduce),因此无法使用它来处理大数据,执行将以 OutOfMemory 异常结束。