我对Hadoop相对缺乏经验,但我在过去一年左右一直在使用样板代码,通过HDInsight .net SDK编写和提交C#MapReduce控制台应用程序。
这些工作似乎经常与许多映射器一起运行,但只有一个减速器。
我的减速器做了相当多的重物,所以只有一个减速器似乎是一个瓶颈。通常我可以RDP进入集群并观察作业像液态金一样运行,然后研磨到......当减速器开始运转时速度慢的东西。)
如何控制应用于reducer的资源量?我可以将更多资源引导到Reducer而不是映射器吗?
群集以编程方式旋转(根据here) - 我可以看到我可以控制配置文件中的各种参数:我是否在正确的轨道上?有什么指针吗?
谢谢!
答案 0 :(得分:1)
您可以明确设置号码。通过使用“mapred.reduce.tasks”配置,您希望您的作业使用的reducer。您看到的一个减速器是默认的。
使用HDInsight .net SDK,可以使用MapReduceJobCreateParameters的“定义”属性在作业级别设置
这个blog post有一个关于如何为作业定义其他配置的例子