Hadoop 如何更改每个作业的io.sort.mb?

Hadoop 如何更改每个作业的io.sort.mb?,hadoop,mapreduce,Hadoop,Mapreduce,我想知道是否可以更改每个作业的io.sort.mb值?我知道您可以在mapred-site.xml中为参数设置一个值,但我希望以编程方式在不同的作业中使用不同的值。我尝试了conf.setInt(“io.sort.mb”,someValue),但似乎不起作用。JVM设置有足够的内存(如2.25GB),并且没有其他作业在运行。当然,在提交之前,只需在配置中设置它(JobConf)。它确实有效;我在收银员那里用过。在设置值之后和提交之前,确保在作业上设置conf。确保您也设置了正确的conf!也许你

我想知道是否可以更改每个作业的io.sort.mb值?我知道您可以在mapred-site.xml中为参数设置一个值,但我希望以编程方式在不同的作业中使用不同的值。我尝试了conf.setInt(“io.sort.mb”,someValue),但似乎不起作用。JVM设置有足够的内存(如2.25GB),并且没有其他作业在运行。

当然,在提交之前,只需在
配置中设置它(
JobConf
)。它确实有效;我在收银员那里用过。在设置值之后和提交之前,确保在
作业上设置
conf
。确保您也设置了正确的
conf
!也许你可以说你是如何知道它不起作用的。

一个好问题,谢谢!我想我使用的方法是正确的,但不知怎么的,我没有看到溢出的记录有任何变化,所以我怀疑我这边出了什么问题。不管怎么说,要再次检查这个问题吗?它应该在tasktracker日志中说明它分配了多少,并拍摄消息,说明它合并输出的方式有多少,以及需要多少次传递。这应该会受到这样的设置的影响,所以您肯定会看到差异。查看Mahout的
RecommenderJob
,其中设置了这些值作为示例。从日志中,我发现它确实有效,但看起来我需要将大小再增加一点。谢谢