我想从 DStream 中删除前 n 个 RDD。我尝试将以下函数与转换一起使用,但它不起作用(错误 OneForOneStrategy:org.apache.spark.SparkContext java.io.NotSerializableException),我认为它不会实现我删除 RDD 的真正目标因为它会返回空的。
var num = 0
def dropNrdds(myRDD: RDD[(String, Int)], dropNum: Int) : RDD[(String, Int)] = {
if (num < dropNum) {
num = num + 1
return myRDD
}
else {
return sc.makeRDD(Seq())
}
}