{type} 类型的 Spark reduceByKey(arguments) 不适用于参数 {arguments}
Spark reduceByKey(arguments) in the type {type} is not applicable for the arguments {arguments}
我收到以下关于 reduce、fold 和 reduceByKey 函数的错误。我搜索了整个论坛,但一无所获。
The method reduceByKey(Function2) in the type
JavaPairRDD is not applicable for the arguments (new
Function2(){})
termsRDD
的类型是 JavaPairRDD<Integer, Integer>
termsRDD.reduceByKey(new Function2<Integer,Integer,Integer>(){
private static final long serialVersionUID = -376611514417758310L;
@Override
public Integer apply(Integer arg0, Integer arg1) throws Exception {
// TODO Auto-generated method stub
return arg0+arg1;
}
});
这是一个相当简单的代码,它分别根据键对值求和。
非常感谢任何帮助。
谢谢
你实现了错误的接口。
JavaPairRDD.reduceByKey
采用 org.apache.spark.api.java.function.Function2
,这需要 call
方法。
- 您似乎正在尝试实施
scala.Function2
应该是
import org.apache.spark.api.java.function.Function2;
termsRDD.reduceByKey(new Function2<Integer,Integer,Integer>(){
@Override
public Integer call(Integer arg0, Integer arg1) throws Exception {
return arg0+arg1;
}
});
我收到以下关于 reduce、fold 和 reduceByKey 函数的错误。我搜索了整个论坛,但一无所获。
The method reduceByKey(Function2) in the type JavaPairRDD is not applicable for the arguments (new Function2(){})
termsRDD
的类型是 JavaPairRDD<Integer, Integer>
termsRDD.reduceByKey(new Function2<Integer,Integer,Integer>(){
private static final long serialVersionUID = -376611514417758310L;
@Override
public Integer apply(Integer arg0, Integer arg1) throws Exception {
// TODO Auto-generated method stub
return arg0+arg1;
}
});
这是一个相当简单的代码,它分别根据键对值求和。
非常感谢任何帮助。 谢谢
你实现了错误的接口。
JavaPairRDD.reduceByKey
采用org.apache.spark.api.java.function.Function2
,这需要call
方法。- 您似乎正在尝试实施
scala.Function2
应该是
import org.apache.spark.api.java.function.Function2;
termsRDD.reduceByKey(new Function2<Integer,Integer,Integer>(){
@Override
public Integer call(Integer arg0, Integer arg1) throws Exception {
return arg0+arg1;
}
});