1.资源调优:
写完了一个复杂的spark作业之后,进行性能调优的时候,首先第一步,
就是要来调节最优的资源配置。
1.1分配资源:
executor-memory、executor-cores、driver-memory
--num-executors 3 \ 配置executor的数量
--driver-memory 1g \ 配置driver的内存(影响不大)
--executor-memory 1g \ 配置每一个executor的内存大小
--executor-cores 3 \ 配置每一个executor的cpu个数
1.2参数调节多大合适?
Yarn模式:先计算出yarn集群的所有大小,比如一共500g内存,100个cpu;
这个时候可以分配的最大资源,比如给定50个executor、每个executor的内存大小10g,每个executor使用的cpu个数为2。
1.3使用原则
在资源比较充足的情况下,尽可能的使用更多的计算资源,尽量去调节到最大的大小。
2.提高并行度
当分配完所能分配的最大资源后,对对应资源去调节程序的并行度。合理设置并行度,可以充分利用集群资源,
减少每个task处理数据量,而增加性能加快运行速度。
2.1设置task数量,设置成与spark Applicaiton的总cpu core数量相同
官方推荐,task数量,设置成spark Application 总cpu core数量的2~3倍
Spark调优(工作实战经验)
最新推荐文章于 2025-04-08 07:53:05 发布