我在运行简单的单词计数程序时遇到错误

时间:2019-05-28 20:25:03

标签: python apache-spark pyspark

运行wordcount程序时出现错误。

我在python shell上尝试过

from pyspark import SparkContext

sc = SparkContext("local", "count app")

words = sc.parallelize (
   ["scala", 
   "java", 
   "hadoop", 
   "spark", 
   "akka",
   "spark vs hadoop", 
   "pyspark",
   "pyspark and spark"]
)

counts = words.count()

print("Number of elements in RDD -> %i" % (counts))
  

回溯(最近通话最近):文件   “ C:/用户/用户/ AppData /本地/程序/Python/Python37/pyspark1.py”,   第13行       coll = words.collect()文件“ C:\ Users \ user \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ pyspark \ rdd.py”,   收集中的第816行       sock_info = self.ctx._jvm.PythonRDD.collectAndServe(self._jrdd.rdd())文件   “ C:\ Users \ user \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ py4j \ java_gateway.py”,   第1257行,在致电中       答案,self.gateway_client,self.target_id,self.name)文件“ C:\ Users \ user \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ py4j \ protocol.py”,   第328行,位于get_return_value中       格式(target_id,“。”,名称),值)py4j.protocol.Py4JJavaError:调用时发生错误   z:org.apache.spark.api.python.PythonRDD.collectAndServe。 :   java.lang.IllegalArgumentException:不支持的类文件主要   版本56

     

在org.apache.xbean.asm6.ClassReader。(ClassReader.java:166)

     

在org.apache.xbean.asm6.ClassReader。(ClassReader.java:148)

     

在org.apache.xbean.asm6.ClassReader。(ClassReader.java:136)

     

在org.apache.xbean.asm6.ClassReader。(ClassReader.java:237)

     在

  org.apache.spark.util.ClosureCleaner $ .getClassReader(ClosureCleaner.scala:49)

     在

  org.apache.spark.util.FieldAccessFinder $$ anon $ 3 $$ anonfun $ visitMethodInsn $ 2.apply(ClosureCleaner.scala:517)

     在

  org.apache.spark.util.FieldAccessFinder $$ anon $ 3 $$ anonfun $ visitMethodInsn $ 2.apply(ClosureCleaner.scala:500)

     在

  scala.collection.TraversableLike $ WithFilter $$ anonfun $ foreach $ 1.apply(TraversableLike.scala:733)

     在

  scala.collection.mutable.HashMap $ anon $ 1 $$ anonfun $ foreach $ 2.apply(HashMap.scala:134)

     在

  scala.collection.mutable.HashMap $ anon $ 1 $$ anonfun $ foreach $ 2.apply(HashMap.scala:134)

     在

  scala.collection.mutable.HashTable $ class.foreachEntry(HashTable.scala:236)

     

在scala.collection.mutable.HashMap.foreachEntry(HashMap.scala:40)

     在

  scala.collection.mutable.HashMap $$ anon $ 1.foreach(HashMap.scala:134)

     在

  scala.collection.TraversableLike $ WithFilter.foreach(TraversableLike.scala:732)

     在

  org.apache.spark.util.FieldAccessFinder $$ anon $ 3.visitMethodInsn(ClosureCleaner.scala:500)

     

在org.apache.xbean.asm6.ClassReader.readCode(ClassReader.java:2175)

     在

  org.apache.xbean.asm6.ClassReader.readMethod(ClassReader.java:1238)

     

在org.apache.xbean.asm6.ClassReader.accept(ClassReader.java:631)

     

在org.apache.xbean.asm6.ClassReader.accept(ClassReader.java:355)

     在

  org.apache.spark.util.ClosureCleaner $$ anonfun $ org $ apache $ spark $ util $ ClosureCleaner $$ clean $ 14.apply(ClosureCleaner.scala:307)

     在

  org.apache.spark.util.ClosureCleaner $$ anonfun $ org $ apache $ spark $ util $ ClosureCleaner $$ clean $ 14.apply(ClosureCleaner.scala:306)

     

在scala.collection.immutable.List.foreach(List.scala:392)

     在

  org.apache.spark.util.ClosureCleaner $ .org $ apache $ spark $ util $ ClosureCleaner $$ clean(ClosureCleaner.scala:306)

     在

  org.apache.spark.util.ClosureCleaner $ .clean(ClosureCleaner.scala:162)

     

在org.apache.spark.SparkContext.clean(SparkContext.scala:2326)

     

在org.apache.spark.SparkContext.runJob(SparkContext.scala:2100)

     

在org.apache.spark.SparkContext.runJob(SparkContext.scala:2126)

     

在org.apache.spark.rdd.RDD $$ anonfun $ collect $ 1.apply(RDD.scala:945)

     在

  org.apache.spark.rdd.RDDOperationScope $ .withScope(RDDOperationScope.scala:151)

     在

  org.apache.spark.rdd.RDDOperationScope $ .withScope(RDDOperationScope.scala:112)

     

在org.apache.spark.rdd.RDD.withScope(RDD.scala:363)

     

在org.apache.spark.rdd.RDD.collect(RDD.scala:944)

     在

  org.apache.spark.api.python.PythonRDD $ .collectAndServe(PythonRDD.scala:166)

     在

  org.apache.spark.api.python.PythonRDD.collectAndServe(PythonRDD.scala)

     在

  java.base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(本机   方法)

     在

  java.base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

     在

  java.base / jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

     

在java.base / java.lang.reflect.Method.invoke(Method.java:567)

     

在py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244)

     

在py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:357)

     

在py4j.Gateway.invoke(Gateway.java:282)

     在

  py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132)

     

在py4j.commands.CallCommand.execute(CallCommand.java:79)

     

在py4j.GatewayConnection.run(GatewayConnection.java:238)

     

在java.base / java.lang.Thread.run(Thread.java:835)

1 个答案:

答案 0 :(得分:0)

Spark不适用于9以上的Java版本,请尝试降级为Java 8