我正在尝试运行此代码:
rddCollected=rddCollect.mapValues(lambda x: (x,1))
rddCollected.collect()
rddCollectJoin=rddCollected.reduceByKey(lambda x,y:(x[0]+y[0],x[1]+y[1]))
- rddCollected 正在使用collect正常运行 rddCollectJoin 无效,并提供以下错误。
Py4JJavaError:调用z:org.apache.spark.api.python.PythonRDD.runJob时发生错误。 :org.apache.spark.SparkException:作业因阶段失败而中止:阶段58.0中的任务0失败1次,最近失败:阶段58.0中丢失任务0.0(TID 78,localhost,执行器驱动程序):java.io.FileNotFoundException :C:\ Users \ lenovo \ AppData \ Local \ Temp \ blockmgr-431169ff-717a-4728-b9b2-c2ed1b4b5b20 \ 0c \ temp_shuffle_d089dc45-014d-4d07-b0c0-ee917ad1b501(系统找不到指定的路径)
Java版本是1.8-我有java 10,但我将其缩小到8,因为有10个问题 有人可以帮忙吗?
答案 0 :(得分:0)
我遇到了.collect()的问题。我正在使用无法序列化的类。只需将Serializable实现到该类,然后重试即可。它对我有用。