Кластер Spark on Yarn создает задание Spark с числом рабочих, которое намного меньше (всего 4 человека), чем указано в контексте Spark (100): вот как я создаю контекст и сеанс Spark:
config_list = [
('spark.yarn.dist.archives','xxxxxxxxxxx'),
('spark.yarn.appMasterEnv.PYSPARK_PYTHON','xxxxxxxxx'),
('spark.yarn.appMasterEnv.PYSPARK_DRIVER_PYTHON','xxxxxxxxxxx'),
('spark.local.dir','xxxxxxxxxxxxxxxxxx'),
('spark.submit.deployMode','client'),
('spark.yarn.queue','root.default'),
('spark.dynamicAllocation.minExecutors','100'),
('spark.dynamicAllocation.maxExecutors','100'),
('spark.executor.instances','100'),
('spark.executor.memory','40g'),
('spark.driver.memory','40g'),
('spark.yarn.executor.memoryOverhead','10g')
]
conf = pyspark.SparkConf().setAll(config_list)
spark = SparkSession.builder.master('yarn')\
.config(conf=conf)\
.appName('hyperparamtuning')\
.getOrCreate()
sc = spark.sparkContext
был бы признателен за любые идеи