设置减少次数的以下3个选项的优先级是什么?换句话说,如果设置了所有三个,将考虑哪一个?
选项1:
setNumReduceTasks(2) within the application code
选项2:
-D mapreduce.job.reduces=2 as command line argument
选项3:
through $HADOOP_CONF_DIR/mapred-site.xml file
<property>
<name>mapreduce.job.reduces</name>
<value>2</value>
</property>
答案 0 :(得分:4)
根据Hadoop - The Definitive Guide
-D选项用于将配置属性设置为值的键颜色 黄色。使用-D指定的选项优先于配置中的属性 文件。这非常有用,因为您可以将默认值放入配置文件中 根据需要使用-D选项覆盖它们。一个常见的例子是设置 通过-D mapred.reduce.tasks = n的MapReduce作业的reducers数量。这将 覆盖在集群上设置或在任何客户端配置中设置的Reducer数 文件。
答案 1 :(得分:1)
您按优先级顺序排列 - 选项1将覆盖2,而2将覆盖3.换句话说,选项1将是您的作业在此方案中使用的选项
答案 2 :(得分:0)
第一优先级:通过命令行传递配置参数(在提交MR应用程序时)
第二优先级:在应用程序代码中设置配置参数
第三优先级:它将从多个xml文件中读取默认参数,例如core-site.xml,hadoop-env.sh,hdfs-site.xml,log4j.properties和mapred-site.xml