spark中excutor的个数、内存大小、core的个数、task的个数、分区的个数、集群的资源情况等的关系

本文详细介绍了Spark性能调优的三个方面:资源分配、分区与Task个数的关系以及并行度设置。通过合理分配executor、core和memory资源,以及调整Task数量,可以显著提升Spark应用的执行效率。并行度的设置应与资源匹配,以充分利用集群资源,减少Task处理数据量,加快运行速度。

一、Spark性能调优之资源分配  大体上这两个方面:core    memory

(1)、分配哪些资源?

   executor、core per executor、memory per executor、driver memory

(2)、在哪里分配这些资源?

   在我们在生产环境中,提交spark作业时,用的spark-submit shell脚本,里面调整对应的参数

/usr/local/spark/bin/spark-submit \

--class cn.spark.sparktest.core.WordCountCluster \

--num-executors 3 \  配置executor的数量

--executor-memory 100m \  配置每个executor的内存大小

--executor-cores 3 \  配置每个executor的cpu core数量

--driver-memory 100m \  配置driver的内存(影响很大)

/usr/local/SparkTest-0.0.1-SNAPSHOT-jar-with-dependencies.jar 

(3)、调节到多大,算是最大呢?

第一种,Spark Standalone,公司集群上,搭建了一套Spark集群,你心里应该清楚每台机器还能够给你使用的,大概有多少内存,多少cpu core;那么,设置的时候,就根据这个实际的情况,去调节每个spark作业的资源分配。比如说你的每台机器能够给你使用4G内存,2个cpu core;20台机器;executor,20;平均每个executor:4G内存,2个cpu core。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值