当我试图将JavaRDD作为新函数((而不是Void的第二个参数时。
stream.foreachRDD( new Function<JavaRDD<String>,JavaRDD<String> >() {
public JavaRDD<String> call(JavaRDD<String> inputRDD) throws Exception {
// do some stuff
}
return RDD
}
我得到以下错误:
类型为 AbstractJavaDStreamLike,JavaRDD> 中的 eachRDD(Function,Void>( 方法不适用于参数 (new Function,JavaRDD>(({}(
DStream 上的foreachRDD
函数需要一个不返回值的方法。 具体来说,它必须实现VoidFunction
接口。
foreachRDD
的目标是对流中的一批数据执行操作,例如将其保存到永久存储或将其发布到显示器。 我不完全确定你想做什么,但如果你想以任何方式改变RDD,这不是适合你的方法。