#apache-spark #pyspark #apache-spark-sql
#apache-spark #pyspark #apache-spark-sql
Вопрос:
Я пытаюсь ограничить попытки приложения spark. Задание повторно отправляется в режиме клиента yarn после однократного сбоя.
Я использую активность HDInsight из Azure Data Factory.Это ограничивается одной попыткой, если параметр передается из ADF.
#
val conf: SparkConf = new SparkConf()
conf.set("spark.yarn.maxAppAttempts","5")
conf.set("yarn.resourcemanager.am.max-attempts","5")
val sc = SparkSession.builder
.master("yarn")
.config(conf)
.appName("test")
.enableHiveSupport()
//.config("yarn.resourcemanager.am.max-attempts","1")
//.config("spark.yarn.maxAppAttempts","1")
.getOrCreate() ##
sc.conf.set("spark.yarn.maxAppAttempts","1")
вывод параметров из консоли показывает
(spark.yarn.maxAppAttempts,1)
(yarn.resourcemanager.am.max-попытки, 1)
Ответ №1:
Проверьте значение yarn.resourcemanager.am.max-attempts
set в кластере Yarn. Spark spark.yarn.maxAppAttempts не может превышать значение, установленное в кластере yarn. Оно должно быть меньше и равно yarn.resourcemanager.am.max-attempts
, чтобы приложения spark могли учитывать настройки yarn.