线程" main"中的例外情况org.apache.spark.SparkException:任务不可序列化"

时间:2016-07-28 09:13:24

标签: json scala serialization spark-streaming

运行以下代码时出现上述错误。我观察到有一些可序列化的问题,但我确切地追踪出来。任何人都可以解释我能在这做什么。提前致谢。

 enter code here 



    def checkforType(json:String):String={
            val  parsedjson = parse(json)
               val res=(parsedjson \\ "Head" \\ "Type" ).extract[String]
               (res)      
           }
    val dstream = KafkaUtils.createStream(ssc, zkQuorum, group, Map("topic" -> 1)).map(_._2)
           val pType = dstream.map(checkforType)
           pType.map(rdd => {
           val pkt= rdd.toString()
          if(pkt.equals("P300")) {

          val t300=dstream.map(par300)
           t300.print()
         }else if(pkt.equals("P30")) {
            val t30=dstream.map(par30)
            t30.print()        
         }else if(pkt.equals("P6")) {
            val t6=dstream.map(par6)
            t6.print()        
         }
        })

1 个答案:

答案 0 :(得分:0)

这主要发生在将对象传递给转换并且该对象不可序列化时。

我发现了一篇有趣的帖子:https://jaceklaskowski.gitbooks.io/mastering-apache-spark/content/spark-tips-and-tricks-sparkexception-task-not-serializable.html

也许这可以解决您的问题。 谢谢!