Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala groupByKey转换不适用于Spark_Scala_Apache Spark - Fatal编程技术网

Scala groupByKey转换不适用于Spark

Scala groupByKey转换不适用于Spark,scala,apache-spark,Scala,Apache Spark,我试图执行以下操作,但在使用groupByKey转换时出错。我在独立模式下使用Spark 样本。sbt包含: name := "Spark Join" version := "1.0" scalaVersion := "2.10.4" libraryDependencies += "org.apache.spark" %% "spark-core" % "1.3.0" fork := true 我的Scala代码 import org.apache.spark.SparkCon

我试图执行以下操作,但在使用groupByKey转换时出错。我在独立模式下使用Spark

样本。sbt包含:

name := "Spark Join"

version := "1.0"

scalaVersion := "2.10.4"

libraryDependencies += "org.apache.spark" %% "spark-core" % "1.3.0"

fork := true
我的Scala代码

    import org.apache.spark.SparkContext
    import org.apache.spark.SparkContext._
    import org.apache.spark.SparkConf
    import java.util.Properties

    object yelpDataJoin {
       def main(args: Array[String]) {

    val reviewFile = " /home/prasad/Desktop/BigData/psp150030_HW3/data/review3.csv"
    val conf = new SparkConf().setAppName("SparkJoins")
    val sc = new SparkContext(conf)
    val reviewData = sc.textFile(reviewFile, 2)
    val groupReviewData = reviewData.map(line => line.split("::")).map(word => (word(2),(word(20),1))).groupByKey().foreach(println)
  }
}
我收到以下错误消息:

15/07/20 16:10:48 INFO MemoryStore: Block broadcast_0 stored as values in memory (estimated size 32.0 KB, free 265.4 MB)
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/spark/rdd/RDD$
    at yelpDataJoin$.main(HW3_Question2.scala:14)
    at yelpDataJoin.main(HW3_Question2.scala)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.apache.spark.deploy.SparkSubmit$.launch(SparkSubmit.scala:328)
    at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:75)
    at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
Caused by: java.lang.ClassNotFoundException: org.apache.spark.rdd.RDD$
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 9 more
如果我在这里做错了什么,请告诉我

谢谢和问候


Prasad

在其他问题中,这通常是版本冲突。您是否使用与运行代码时使用的版本不同的版本进行编译?尝试升级到Spark 1.4我遇到了类似的问题,但它涉及案例类。升级时没有再次发生。@Paul我的Spark版本是1.1.0,从Spark shell可以看出。sample.sbt中提到的是1.0,我试着把它设为1.1,但它并没有改变输出。我仍然得到相同的输出,所以您使用1.1.0提交并同时指定1.3.0作为依赖项?“看来是对的。”保罗,我明白了。当我更改sample.sbt中的版本并使用sbt包重新打包时,出现了版本冲突,它创建了一个新的jar文件,在独立模式下执行时应该引用该文件。在我的例子中,我指的是那个旧罐子。非常感谢您指出这个问题。在其他问题中,这通常是版本冲突。您是否使用与运行代码时使用的版本不同的版本进行编译?尝试升级到Spark 1.4我遇到了类似的问题,但它涉及案例类。升级时没有再次发生。@Paul我的Spark版本是1.1.0,从Spark shell可以看出。sample.sbt中提到的是1.0,我试着把它设为1.1,但它并没有改变输出。我仍然得到相同的输出,所以您使用1.1.0提交并同时指定1.3.0作为依赖项?“看来是对的。”保罗,我明白了。当我更改sample.sbt中的版本并使用sbt包重新打包时,出现了版本冲突,它创建了一个新的jar文件,在独立模式下执行时应该引用该文件。在我的例子中,我指的是那个旧罐子。非常感谢你指出这个问题。