Локально запустить приложение spark через sbt
Я хочу запустить искровую работу локально для тестирования. Если spark-submit
и собранный сосуд используется просто отлично.
Однако если sbt run
используется, я получаю очень странную ошибку https://gist.github.com/geoHeil/946dd7706f44f338101c8332f4e13c1a
Попытка установить java-опции как
javaOptions ++= Seq("-Xms512M", "-Xmx2048M", "-XX:MaxPermSize=2048M", "-XX:+CMSClassUnloadingEnabled")
Не помогло решить проблему.
Попытка возиться с настройками памяти в local[*]
режим как
.set("spark.executor.memory", "7g")
.set("spark.driver.memory", "7g")
только породил дальнейшие проблемы ExecutorLostFailure
1 ответ
Решение
Я никогда не сталкивался с этой проблемой специально, но я думаю, что искровой код не предназначен для запуска с sbt run
, Я даже помню, как читал об этом в документации, но не смог найти его на данный момент.
Я думаю, что вы должны вместо этого скомпилировать его с помощью sbt и использовать spark-submit
вместо.