Привет, я запускаю свое приложение Spark с помощью скрипта отправки искры как такового.
spark-submit --master spark://Maatari-xxxxxxx.local:7077 --class EstimatorApp /Users/sul.maatari/IdeaProjects/Workshit/target/scala-2.11/Workshit-assembly-1.0.jar --d
eploy-mode cluster --executor-memory 15G num-executors 2
У меня есть автономный кластер spark, развернутый на двух узлах (мои 2 ноутбука). Кластер работает нормально. По умолчанию установлено 15G для воркеров и 8 ядер для исполнителей. Теперь я испытываю следующее странное поведение. Хотя я явно устанавливаю память, и это также можно увидеть в переменной среды пользовательского интерфейса sparconf, в пользовательском интерфейсе кластера говорится, что мое приложение ограничено 1024 МБ для памяти исполнителя. Это заставляет меня думать о параметре 1G по умолчанию. Интересно, почему это.
Мое приложение действительно терпит неудачу из-за проблемы с памятью. Я знаю, что мне нужно много памяти для этого приложения.
Последнее, что смущает, — это программа Driver. Почему, учитывая, что я нахожусь в кластерном режиме, отправка искры не возвращается немедленно? Я думал, что, учитывая, что драйвер выполняется в кластере, клиент, то есть приложение отправки, должен немедленно вернуться. Это еще раз подсказывает мне, что что-то не так с моей конфигурацией и тем, как все выполняется.
Может кто поможет диагностировать?
spark.executorEnv.
. Попробуйте установить--driver-memory
на другие значения и проверьте. Кроме того, установите их через программу или вызовитеtoDebugString
на conf и посмотрите значения для дальнейшего отладки. - person moon   schedule 19.08.2017num-executors 2
должно быть--num-executors 2
- person WestCoastProjects   schedule 21.07.2018