gpt4 book ai didi

java - JobControl 和 JofConf.setMapperClass() 错误

转载 作者:可可西里 更新时间:2023-11-01 14:54:27 25 4
gpt4 key购买 nike

我正在尝试使用 JobControl 将多个 Mappers 和 Reducers 连接在一起,但在调用 JobConf.setMapperClass 时遇到以下错误:

setMapperClass(java.lang.Class<? extends org.apache.hadoop.mapred.Mapper>) in
org.apache.hadoop.mapred.JobConf cannot be applied to
(java.lang.Class<capture#530 of ? extends org.apache.hadoop.mapreduce.Mapper>)

似乎 java 提示我的 Mapper 实现,它基于 mapreduce.Mapper,而 JobControl 采用 mapred.Mapper。 (我在这方面是对的吗?)

现在我的问题是:我应该继续使用 mapreduce.Mapper 吗?并放弃JobControl并找到其他东西来连接我的工作,或者将我的实现更改为 mapred.Mapper并继续使用 JobControl。其中之一是否被视为折旧?

最佳答案

如评论中所述,mapredmapreduce 包彼此不同,mapreduce 是更新、更简洁的包。这篇文章进一步讨论了差异:hadoop.mapred vs hadoop.mapreduce?

因此对于您的特定问题,您似乎想使用 org.apache.hadoop.mapreduce.lib.jobcontrol.JobControl而不是 org.apache.hadoop.mapred.jobcontrol.JobControl .

另请参阅:Is it better to use the mapred or the mapreduce package to create a Hadoop Job?

关于java - JobControl 和 JofConf.setMapperClass() 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19307657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com