Там может быть несколько причин для такого поведения.
YARN может предоставить вам только количество исполнителей на основе имеющихся ресурсов (память, приставки). Если вы попросите больше, то у вас есть ресурсы, это даст вам максимум, что может.
Это может быть также случай, когда включено динамическое распределение. Это означает, что Spark создаст новых исполнителей, когда они понадобятся.
Чтобы решить некоторые проблемы в Sparkling Water, нам нужно найти всех доступных исполнителей в начале приложения, создав искусственные вычисления и попытаться использовать весь кластер. Это может привести к меньшему количеству исполнителей.
Я бы предложил посмотреть на https://github.com/h2oai/sparkling-water/blob/master/doc/tutorials/backends.rst, где вы можете прочитать больше о параграфе, приведенном выше, и о том, как его можно решить, используя так называемую внешнюю бленду.
Вы также можете посмотреть здесь https://github.com/h2oai/sparkling-water/blob/master/doc/configuration/internal_backend_tuning.rst. Это Sparkling Water guide для настройки конфигурации.
Kuba
какая версия искры и игристой воды вы используете? Также вы могли бы exaplain «Я получаю только двух исполнителей»? Как вы его проверяете? –
Возможный дубликат [как заставить исполнителей запускать искровую программу с помощью --num-executors?] (Http://stackoverflow.com/questions/34352669/how-to-make-executors-run-spark-program-by- использование-num-executors/34353466 # 34353466) –
@ GlennieHellesSindholt, это, пожалуй, более связанное с Spakling Water, к сожалению, от того, что мне сказали мои коллеги. У нас были подобные проблемы и мы работаем над этим, хотелось бы, чтобы OP давала нам больше информации. –