关于 Hadoop3 的 HADOOP_MAPRED_HOME

2021-03-21 12:14:19 +08:00
 xiaopanzi

我比较了 Hadoop 2 和 Hadoop 3 的关于伪分布式的部署文档,其中一个区别是 Hadoop 3 要求设置mapreduce.application.classpath,而该值中使用了环境变量HADOOP_MAPRED_HOME

实际上,我在没有手动设置HADOOP_MAPRED_HOME的情况下,里面的 example 还是能够正常运行。所以 Hadoop 内部是如何得到HADOOP_MAPRED_HOME的默认值的?

此外,即使是在 Hadoop 2 中,配置文件里面也有mapreduce.application.classpath这个属性,只是文档里面没有让设置。那么,究竟是什么场景下需要用到这个值?

1306 次点击
所在节点    Hadoop
2 条回复
e583409
2021-03-22 09:51:34 +08:00
我本地 mac 电脑和线上 3 台服务器配置 给你参考一下:
<property>
<name>yarn.app.mapreduce.am.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>
<property>
<name>mapreduce.map.env</name>
<value>HADOOP_MAPRED_HOME=${HADOP_HOME}</value>
</property>
<property>
<name>mapreduce.reduce.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>
xiaopanzi
2021-05-07 17:29:39 +08:00
@e583409 多谢回复。我只是好奇:Hadoop 内部是如何得到 HADOOP_MAPRED_HOME 的默认值的?它是否必须?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/763624

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX