spark 作业性能调优

目录

  • 1、分配更多资源、并行度、RDD架构与缓存
  • 2、shuffle 调优
  • 3、算子调优
  • 4、JVM调优、广播大变量、kryo序列化、fastutil优化数据格式等
  • 5、troubleshooting
  • 6、数据倾斜

1、分配更多资源、并行度、RDD架构与缓存

分配更多资源:

  • spark作业分配更多的executor
  • 对与每个executor分配更多的memory
  • 对于每个executor分配更多的cpu core

并行度:

  • 所谓并行度是指spark作业中每个stage阶段中可以执行的task数量
  • 提高每个stage可以执行的task,提高并行度,降低每个task处理的数据量
  • 官方推荐,task数量设置成spark applicationcpu core数量的2~3
  • SparkConf conf = new SparkConf().set("spark.default.parallelism", "task数量")

RDD重构与缓存:

  • RDD架构重构与优化,尽量去复用RDD,差不多的RDD,可以抽取称为一个共同的RDD,供后面的RDD计算时,反复使用;
  • 公共RDD一定要实现持久化,持久化顺序为:纯内存无序列化;纯内存序列化;内存加磁盘无序列化;内存加磁盘序列化
  • 为了数据的高可靠性,而且内存充足,可以使用双副本机制,进行持久化;

2、shuffle 调优

 

3、算子调优

 

4、JVM调优、广播大变量、kryo序列化、fastutil优化数据格式等

 

5、troubleshooting

 

6、数据倾斜

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值