我目前正在使用hadoop中的字数统计应用程序作为基准。我发现cpu的使用率几乎一直保持在80-90%左右。我希望cpu使用率不稳定。是否有hadoop应用程序可以为我提供此功能?非常感谢。
发布于 2011-04-21 20:22:25
我不认为有一种方法可以限制或指定hadoop使用的范围。Hadoop将使用可用的CPU。当我运行大量作业时,我经常处于90%+范围内。
控制CPU使用率的一种方法是更改每个任务跟踪器可以同时运行的映射器/减速器的最大数量。这是通过$HADOOP_HOME/conf/core-site.xml
中的mapred.tasktracker.{map|reduce}.tasks.maximum
设置完成的。
当映射器/减少器数量有限时,它将在任务跟踪器上使用较少的CPU。
另一种方法是在设置作业时设置mapred.tasktracker.{map|reduce}.tasks
的配置值。这将迫使该作业使用那么多的映射器/减少器。这个数字将在可用的任务跟踪器中分配,因此,如果您有4个节点,并且希望每个节点有1个映射器,则应将mapred.tasktracker.map.tasks
设置为4
。也有可能,如果一个节点可以运行4个映射器,它将运行所有4个映射器,我不知道hadoop将如何拆分任务,但强制每个作业一个数字是一种选择。
我希望这能帮你找到你要去的地方。我还是不太明白你在找什么。:)
https://stackoverflow.com/questions/5748585
复制