节点+Executor+Core+Task+Partition+RDD+job+DAG+stage+action算子之间的数量关系
上面的Core与Task的默认对应关系是一对一,也可以通过.config("spark.task.cpus",1)修改.
这个参数的意思是:为每个任务分配的内核数量
上面图中的Core可以放大如下:
action算子和job一对一。
当然考虑优化的情况下,当然如果考虑优化的话,是可以多个算子对一个job的,因为被spark优化成一个了。
stage的话一对多。
task是线程池,所以core也是一个个执行task的,这样就和第一张图联系起来了。