用于mapred.job.queue.name的用例

时间:2014-01-03 16:10:14

标签: hadoop mapreduce cloudera hortonworks-data-platform

使用map reduce作业队列的真实世界用例是什么,即mapred.job.queue.name属性的值。我看到default始终被用作值。

2 个答案:

答案 0 :(得分:15)

mapred.job.queue.name用于将作业分配给特定队列。默认情况下,所有作业都将转到“默认”队列。但是,可以创建分层队列。像root,root.q1,root.q1.q1a等。 这些队列中的每一个都可以拥有自己的一组属性来确保某些优先级。

现实世界的情况是,当您有多个利益相关方要求在同一组基础架构上提交报告时。例如,在我的工作场所,我们让数据科学家尝试运行各种研究工作,客户支持团队寻找各种每日和每周的数据,然后有真正的工作支持日常业务。它的核心是基础设施应该能够最好地支持它。 拥有不同优先级的各种队列只是让Hadoop可以轻松决定在处理器可用时下一步该做什么,或者它可以使用多少。

因此,数据科学家将分配给“Data Analyst”队列,营销团队将分配给“Marketing”队列。可以根据一天中的时间更改队列的优先级。

答案 1 :(得分:0)

Map / Reduce系统始终支持至少一个名称为default的队列。因此,此参数的值应始终包含字符串default。 Hadoop支持的一些作业调度程序(如Capacity Scheduler)支持多个队列。如果正在使用此类调度程序,则必须在此处指定已配置的队列名称列表。定义队列后,用户可以使用作业配置中的属性名称mapred.job.queue.name将作业提交到队列。可能有一个单独的配置文件,用于配置由调度程序管理的这些队列的属性。有关相同信息,请参阅调度程序的文档。

参考:http://hadoop.apache.org/docs/r0.19.1/cluster_setup.html