executor-cores/spark.executor.cores
参数说明
:该参数用于设置每个Executor
进程的CPU core
数量。这个参数决定了每个Executor
进程并行执行task
线程的能力。因为每个CPU core
同一时间只能执行一个task
线程,因此每个Executor
进程的CPU core
数量越多,越能够快速地执行完分配给自己的所有task
线程。
参数调优建议
:Executor
的CPU core
数量设置为2~4
个较为合适。同样得根据不同部门的资源队列来定,可以看看自己的资源队列的最大CPU core
限制是多少,再依据设置的Executor
数量,来决定每个Executor
进程可以分配到几个CPU core
。同样建议,如果是跟他人共享这个队列,那么num-executors
* executor-cores
不要超过队列总CPU core
的1/3~1/2
左右比较合适,也是避免影响其他同学的作业运行。