运行 通过 sbt 在本地启动应用程序

run spark application locally via sbt

我想 运行 在本地创建 Spark 作业以进行测试。如果使用 spark-submit 和组装好的罐子,它就可以正常工作。

但是如果使用 sbt run 我会得到一个非常奇怪的错误 https://gist.github.com/geoHeil/946dd7706f44f338101c8332f4e13c1a

正在尝试设置 java-opts 喜欢

javaOptions ++= Seq("-Xms512M", "-Xmx2048M", "-XX:MaxPermSize=2048M", "-XX:+CMSClassUnloadingEnabled")

对解决问题没有帮助。

尝试 fiddle 在 local[*] 模式下使用内存设置,例如

.set("spark.executor.memory", "7g")
.set("spark.driver.memory", "7g")

只是引发了 ExecutorLostFailure

的进一步问题

我从来没有 运行 特别关注这个问题,但我认为 spark 代码不是 运行 和 sbt run。我什至记得在文档中读过它,但现在找不到它。

我想你应该做的是用 sbt 编译它并改用 spark-submit