spark join 失败并出现异常 "ClassNotFoundException: org.apache.spark.rdd.RDD$" 但在粘贴到 Hadoop 集群的 spart-shell 时运行
spark join fails with exception "ClassNotFoundException: org.apache.spark.rdd.RDD$" but runs when pasting into spart-shell of Hadoop Cluster
我正在尝试使用连接根据来自另一个文件(列表)的值从一个文件(事实)中过滤记录。
case class CDR(no:Int,nm:String)
val facts = sc.textFile("/temp_scv/a.csv").map( (line) => { val cols = line.split(",");new CDR(cols(0).toInt,cols(1)); }).keyBy( (cdr:CDR) => cdr.no)
val list = sc.textFile("/temp_scv/b.csv").keyBy( (no) => no.toInt)
val filtered = facts.join(list)
当我将其打包为 jar 并使用 spark-submit 在 Hadoop cluster
上执行时,它失败并出现异常
ClassNotFoundException: org.apache.spark.rdd.RDD$
但是,当我将相同的代码粘贴到 Hadoop cluster
上的 spark-shell 时运行良好。
版本不匹配。我在集群上使用 Spark 1.2.0。代码是用 sark-core 版本 1.3.0
编译的
使用相同的 spark-core 版本编译代码解决了问题。
我正在尝试使用连接根据来自另一个文件(列表)的值从一个文件(事实)中过滤记录。
case class CDR(no:Int,nm:String)
val facts = sc.textFile("/temp_scv/a.csv").map( (line) => { val cols = line.split(",");new CDR(cols(0).toInt,cols(1)); }).keyBy( (cdr:CDR) => cdr.no)
val list = sc.textFile("/temp_scv/b.csv").keyBy( (no) => no.toInt)
val filtered = facts.join(list)
当我将其打包为 jar 并使用 spark-submit 在 Hadoop cluster
上执行时,它失败并出现异常
ClassNotFoundException: org.apache.spark.rdd.RDD$
但是,当我将相同的代码粘贴到 Hadoop cluster
上的 spark-shell 时运行良好。
版本不匹配。我在集群上使用 Spark 1.2.0。代码是用 sark-core 版本 1.3.0
编译的使用相同的 spark-core 版本编译代码解决了问题。