从Spark 2.0中的RDD收集案例类时返回异常

时间:2016-10-06 09:11:44

标签: apache-spark rdd case-class

这可能是微不足道的,但我无法理解我做错了什么。看起来从RDD收集案例类有一些问题。

case class Test(val1 :Double, val2 :Double)

val myrdd = sc.makeRDD(Array(Test(1,1),Test(1,1),Test(1,1),Test(1,1)))

myrdd.collect.foreach(x => println(x.val1))

返回:

stderr]:> failure running last command: org.apache.spark.SparkException: Job aborted due to stage failure: ClassNotFound with classloader: sun.misc.Launcher$AppClassLoader@5d6f64b1
  at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$failJobAndIndependentStages(DAGScheduler.scala:1450)
at org.apache.spark.scheduler.DAGScheduler$$anonfun$abortStage$1.apply(DAGScheduler.scala:1438)
  at org.apache.spark.scheduler.DAGScheduler$$anonfun$abortStage$1.apply(DAGScheduler.scala:1437)
  at scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
  at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:48)
...

如果我在收集一切正常之前将案例类映射到元组。试图从类路径中的库导入案例类而不是声明它,同样的错误,没有运气。这在本地模式的火花壳中工作正常。 我在mesos集群上运行Spark 2.0。任何帮助表示赞赏。

0 个答案:

没有答案