“纱线簇上的火花”创建的火花作业的工人数量远小于火花上下文中指定的工人数量

2024-09-29 23:16:22 发布

您现在位置:Python中文网/ 问答频道 /正文

“纱线簇上的火花”创建的火花作业的工人数量比火花上下文中指定的工人数量(100)小得多(只有4名工人): 以下是我如何创建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','somequeue'),
    ('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('myapp')\
    .getOrCreate()

sc = spark.sparkContext

如果您有任何想法,我将不胜感激


Tags: config数量conflistsparkpyspark火花工人
1条回答
网友
1楼 · 发布于 2024-09-29 23:16:22

如果指定最小工作节点数大于集群中的实际工作节点/执行者数,则spark会话将在作业运行时分配最大可用工作节点数

您还可以通过以下方式查看会话中分配的执行者数量来验证这一点:

sc._conf.get('spark.executor.instances')

我希望你能理解

相关问题 更多 >

    热门问题