如何在群集中为每个节点设置任务数量?

时间:2011-12-15 05:24:22

标签: hadoop

我看到我们可以为每个tasktracker设置map / reduce任务的数量,但是如何设置群集中每个节点的tasktrackers数量?

如何关闭安全性以便每个节点可以运行多个tasktracker?在hdfs-site.xml中将dfs.permissions设置为false是否足够?

阿伦

2 个答案:

答案 0 :(得分:4)

为什么需要多个任务工具? 您可以根据在tasktracker中设置的插槽数运行多个作业。 JobTracker与tasktracker交谈以查找它是否在服务器上有任何空闲插槽(从数据所在的同一节点开始,如果不能,则从其他地方开始)如果你确实有多个任务分析器,他们就不会知道真正的负载在服务器上,性能可能会恶化

您应该根据节点的内存和CPU功能设置插槽数,最大映射数和最大缩减数(您可以从每个任务的核心开始,但如果您知道任务很少在CPU上你可以设置更高的)

答案 1 :(得分:3)

如果您的8核计算机具有单线程模型,为datanode预留1个线程,为tasktracker预留1个线程,则可以有6个线程可用。根据程序的需要,您可以拥有4个地图,2个减速器。如果映射不是CPU密集型的,则可以增加映射器的数量。还可以根据系统的RAM为每个map / reduce任务分配适当的内存。