小编Alp*_*per的帖子

如何在嵌套地图函数中解决SPARK-5063

RDD转换和操作只能由驱动程序调用,而不能在其他转换内部调用; 例如,rdd1.map(x => rdd2.values.count()*x)无效,因为无法在rdd1.map转换中执行值转换和计数操作.有关更多信息,请参阅SPARK-5063.

正如错误所说,我正在尝试在主映射函数中映射(转换)JavaRDD对象,Apache Spark怎么可能?

主JavaPairRDD对象(TextFile和Word是定义的类):

JavaPairRDD<TextFile, JavaRDD<Word>> filesWithWords = new...
Run Code Online (Sandbox Code Playgroud)

和地图功能:

filesWithWords.map(textFileJavaRDDTuple2 -> textFileJavaRDDTuple2._2().map(word -> new Word(word.getText(), (long) textFileJavaRDDTuple2._1().getText().split(word.getText()).length)));
Run Code Online (Sandbox Code Playgroud)

我也试过foreach而不是map功能,但没有工作.(当然搜索SPARK-5063)

java nested apache-spark

7
推荐指数
1
解决办法
5883
查看次数

标签 统计

apache-spark ×1

java ×1

nested ×1