gpt4 book ai didi

java - 使用Livy提交Spark作业时报错: User did not initialize spark context

转载 作者:行者123 更新时间:2023-12-02 09:20:21 27 4
gpt4 key购买 nike

我对 Spark 非常陌生,我正在按照此文档通过 Livy 提交 Spark 作业 https://learn.microsoft.com/en-us/azure/hdinsight/spark/apache-spark-livy-rest-interface

这是我的命令:

curl -k --user "username:password!" -v -H "Content-Type: application/json" -X POST -d '{ "file":"/test4spark/test4sparkhaha.jar", "className":"helloworld4spark.test" }' "https://xxx.azurehdinsight.net/livy/batches" -H "X-Requested-By: username"

文件test4sparkhaha.jar是一个 super 简单的Java应用程序,它只包含一个类,并且只有一个打印“哈哈哈”的main方法,没有其他...我将 Eclipse 中的项目导出到 Runnable Jar,并尝试使用 Java -jarSpark-submit 在我的 Spark 集群上运行它。两者都效果很好。然后我开始尝试通过 Livy 提交作业,但总是失败,我在 Yarn 日志中发现以下错误:

19/11/06 14:36:06 错误 ApplicationMaster:未捕获的异常:java.lang.IllegalStateException:用户未初始化 Spark 上下文!在org.apache.spark.deploy.yarn.ApplicationMaster.runDriver(ApplicationMaster.scala:510)在 org.apache.spark.deploy.yarn.ApplicationMaster.org$apache$spark$deploy$yarn$ApplicationMaster$$runImpl(ApplicationMaster.scala:345)在 org.apache.spark.deploy.yarn.ApplicationMaster$$anonfun$run$2.apply$mcV$sp(ApplicationMaster.scala:260)在 org.apache.spark.deploy.yarn.ApplicationMaster$$anonfun$run$2.apply(ApplicationMaster.scala:260)在 org.apache.spark.deploy.yarn.ApplicationMaster$$anonfun$run$2.apply(ApplicationMaster.scala:260)在 org.apache.spark.deploy.yarn.ApplicationMaster$$anon$5.run(ApplicationMaster.scala:815)在 java.security.AccessController.doPrivileged( native 方法)在 javax.security.auth.Subject.doAs(Subject.java:422)在 org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1869)在 org.apache.spark.deploy.yarn.ApplicationMaster.doAsUser(ApplicationMaster.scala:814)在 org.apache.spark.deploy.yarn.ApplicationMaster.run(ApplicationMaster.scala:259)在 org.apache.spark.deploy.yarn.ApplicationMaster$.main(ApplicationMaster.scala:839)在 org.apache.spark.deploy.yarn.ApplicationMaster.main(ApplicationMaster.scala)

这是我尝试过的 Spark-submit 命令:

spark-submit --class helloworld4spark.test test4sparkhaha.jar

它工作得很好...

你们能帮我理解为什么它会给出错误,而 Spark-submit 工作正常吗?

最佳答案

我猜您正在尝试使用 Livy 提交本地 .jar 文件。对于spark-submit它可以工作(将作业提交到Yarn支持它),但对于Livy服务器则不行。

要使其正常工作,您需要将 jar 上传到 hdfs/wasbs/adls/http 可访问位置(确保您的 Spark 配置为访问该位置)。

请引用this第一段指南。

关于java - 使用Livy提交Spark作业时报错: User did not initialize spark context,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58733583/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com