Spark的executor

来源:6-3 RDD简介及特性【图解WordCount示例中RDD如何转换】

Panda_io

2020-04-11

老师当我们提交一个SaprkApplication给Driver,假设yarn负责资源管理,yarn分配一个Node也就是某一台计算节点给SparkApplication,这个Node会产生一个Executor还是多个Executor向Driver注册呀?

写回答

1回答

叁金

2020-04-12

spark的分配模式有两种,一种是尽量分配到不同节点,以利于本地化计算,另一种是尽量在同一节点,尽量集中。
master会逐个遍历当前可用的worker,如果该worker可用,直接为其分配一个executor基数的core,然后会读取一个系统参数spark.deploy.spreadOut。当该参数配置为false,master会将该worker上的core一直分配给这个app,直到当前worker没有足够资源,或者app的要求已经满足。如果配置为true,则每个worker在分配完一次资源后,会跳转到下一个worker继续再分配,直到下一次对整个workers集群的遍历重新开始。这样做的意义是尽可能的将executor分配到更多的worker上去执行,有利于计算时的本地化计算,否则在计算时计算所需的数据不在当前节点,就需要占用网络资源拉取数据。
系统默认配置为true。

0
0

玩转热门框架 用企业级思维 开发通用够硬的大数据平台

通揽大数据平台全貌,培养企业级开发大局观

485 学习 · 192 问题

查看课程