火花流功能火花提交时间通过异常
Posted
技术标签:
【中文标题】火花流功能火花提交时间通过异常【英文标题】:spark streaming functionality spark-submit time through exception 【发布时间】:2016-02-16 16:57:52 【问题描述】:我是 Spark 流媒体的新手。
当我将 spark 流功能作为普通 scala 应用程序运行时,它按预期工作。
我能够捕获我的 kafka 事件并能够存储在 hdfs 本身中。
当我尝试使用 spark-submit 命令作为流媒体 jar 运行时,出现以下错误。
spark-submit --class Test --master yarn --executor-memory 20G --num-executors 50 spark-kafka-streaming-0.0.1-SNAPSHOT-jar-with-dependencies.jar
16/02/16 08:39:23 INFO scheduler.JobGenerator: Started JobGenerator at 1455640800000 ms
16/02/16 08:39:23 INFO scheduler.JobScheduler:已启动 JobScheduler 16/02/16 08:40:00 INFO utils.VerifiableProperties:验证属性
16/02/16 08:40:00 INFO utils.VerifiableProperties: Property group.id is overridden to
16/02/16 08:40:00 INFO utils.VerifiableProperties: Property zookeeper.connect is overridden to
16/02/16 08:40:00 ERROR actor.ActorSystemImpl: Uncaught fatal error from thread [sparkDriver-akka.actor.default-dispatcher-2] shutting down ActorSystem [sparkDriver]
java.lang.NoSuchMethodError: org.apache.spark.streaming.kafka.DirectKafkaInputDStream.id()I
ache.spark.streaming.kafka.DirectKafkaInputDStream.compute(DirectKafkaInputDStream.scala:165)at org.ap
at ache.spark.streaming.kafka.DirectKafkaInputDStream.compute(DirectKafkaInputDStream.scala:165)at org.ap at org.apache.spark.streaming.dstream.DStream$$anonfun$getOrCompute$1$$anonfun$1.apply(DStream.scala:300)
at org.apache.spark.streaming.dstream.DStream$$anonfun$getOrCompute$1$$anonfun$1.apply(DStream.scala:300)
at scala.util.DynamicVariable.withValue(DynamicVariable.scala:57)
at org.apache.spark.streaming.dstream.DStream$$anonfun$getOrCompute$1.apply(DStream.scala:299)
at org.apache.spark.streaming.dstream.DStream$$anonfun$getOrCompute$1.apply(DStream.scala:287)
请帮帮我。
提前致谢。
【问题讨论】:
【参考方案1】:InputDStream.id
从 1.4 开始添加到 Spark Streaming。因此,spark-kafka-streaming-0.0.1-SNAPSHOT-jar-with-dependencies.jar
很可能是使用 Spark 1.4+ 生成的,而 spark-submit
的 Spark 版本低于 1.4。
通常,您应该始终使用相同的版本进行编译和运行时。
第一步是使用bin/spark-submit --version
检查您的 spark-submit 版本。然后检查 maven pom.xml(或 sbt 构建文件)中 Spark jar 的版本,看看它们是否相同。如果没有,请更新其中一个并确保它们相同。要更新spark-submit
,您可能需要从http://spark.apache.org/downloads.html 下载正确的版本
【讨论】:
您好 zsxwing,感谢您的回复,当我尝试作为正常的 scala 应用程序运行时,它按预期工作。如果是 jar 相关问题,请告诉我如何解决此问题。你能建议我如何让我的 spark-kafka-streaming-0.0.1-SNAPSHOT-jar-with-dependencies.jar 按预期工作。你能详细说明一下答案吗?以上是关于火花流功能火花提交时间通过异常的主要内容,如果未能解决你的问题,请参考以下文章