Spark性能调优篇一之任务提交参数调整
问题一:有哪些资源可以分配给spark作业使用?
答案:executor个数,cpu per exector(每个executor可使用的CPU个数),memory per exector(每个executor可使用的内存),driver memory
问题二:在什么地方分配资源给spark作业?
答案:很简单,就是在我们提交spark作业的时候的脚本中设定,具体如下(这里以我的项目为例)
/usr/local/spark/bin/spark-submit \
--class com.xingyun.test.WordCountCluster \
--num-executors 3 \*配置executor的数量 *\
--driver-memory 100m \*配置driver的内存(影响不大)*\
--executor-memory 100m \*配置每个executor的内存大小 *\
--executor-cores 3 \*配置每个executor的cpu core数量 *\
/usr/local/SparkTest-0.0.1-SNAPSHOT-jar-with-dependencies.jar \
我们该如何设定这些参数的大小呢?下面分两种情况讨论。
case1:把spark作业提交到Spark Standalone上面。一般自己知道自己的spark测试集群的机器情况。举个例子:比如我们的测试集群的机器为每台4G内存,2个CPU core,5台机器。这里以可以申请到最大的资源为例,那么 --num-executors 参数就设定为 5,那么每个executor平均分配到的资源为:--executor-memory 参数设定为4G,--executor-cores 参数设定为 2 。
case2:把spark作业提交到Yarn集群上去。那就得去看看要提交的资源队列中大概还有多少资源可以背调度。举个例子:假如可调度的资源配置为:500G内存,100个CPU core,50台机器。 --num-executors 参数就设定为 50,那么每个executor平均分配到的资源为:--executor-memory 参数设定为 10G,--executor-cores 参数设定为 2
问题三:为什么分配了这些资源以后,我们的spark作业的性能就会得到提升呢?
因为是调优后呀.
作者:z小赵
链接:https://www.jianshu.com/p/d07e79c22d90
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Spark性能调优篇一之任务提交参数调整的更多相关文章
- Spark性能调优篇七之JVM相关参数调整
降低cache操作的内存占比 方案: 通过SparkConf.set("spark.storage.memoryFraction","0.6")来设定.默认是0 ...
- Spark性能调优篇八之shuffle调优
1 task的内存缓冲调节参数 2 reduce端聚合内存占比 spark.shuffle.file.buffer map task的内存缓冲调节参数,默认是3 ...
- Spark性能调优篇六之调节数据本地化等待时长
数据本地化等待时长调节的优化 在项目该如何使用? 通过 spark.locality.wait 参数进行设置,默认为3s,6s,10s. 项目中代码展示: new SparkConf().set(&q ...
- Spark性能调优篇三之广播方式传输数据
广播大变量,重复用到的变量 原因见 https://www.jianshu.com/p/2c297b23ebda
- Spark性能调优篇二之重构RDD架构及RDD持久化
如果一个RDD在两个地方用到,就持久化他.不然第二次用到他时,会再次计算. 直接调用cache()或者presist()方法对指定的RDD进行缓存(持久化)操作,同时在方法中指定缓存的策略. 原文:h ...
- [Spark性能调优] 第一章:性能调优的本质、Spark资源使用原理和调优要点分析
本課主題 大数据性能调优的本质 Spark 性能调优要点分析 Spark 资源使用原理流程 Spark 资源调优最佳实战 Spark 更高性能的算子 引言 我们谈大数据性能调优,到底在谈什么,它的本质 ...
- Spark性能调优
Spark性能优化指南——基础篇 https://tech.meituan.com/spark-tuning-basic.html Spark性能优化指南——高级篇 https://tech.meit ...
- spark性能调优 数据倾斜 内存不足 oom解决办法
[重要] Spark性能调优——扩展篇 : http://blog.csdn.net/zdy0_2004/article/details/51705043
- Spark性能调优之代码方面的优化
Spark性能调优之代码方面的优化 1.避免创建重复的RDD 对性能没有问题,但会造成代码混乱 2.尽可能复用同一个RDD,减少产生RDD的个数 3.对多次使用的RDD进行持久化(ca ...
随机推荐
- MathType单边大括号的编辑技巧你知道吗?
大家都知道,一般情况下,数学里面的括号都是成对出现的,但是也有些情况下可以只用到单边的括号,就比如分段函数,在编写的时候只需用到左半边的括号.MathType作为专业的公式编辑器,用它来编写公式再方便 ...
- CorelDRAW 条形码改不了字体如何解决?
看到有朋友提问说CorelDRAW条码生成设置里面的字体不能更改,是灰色的,不能选择.这个默认字体怎么改? 出现问题:条码生成设置里面的字体不能更改,是灰色的,不能选择. 解决方法一:找到C盘字体文件 ...
- 【PYTEST】第二章编写测试函数
知识点: assert 测试函数标记 跳过测试 标记预期失败的测试用例 1. asseet 返回的都是布尔值,等于False(F) 就是失败, assert 有很多 assert something ...
- 【VUE】3.表单操作
1. Form组件渲染 1. components -> 新增组件Form.vue <template> <div>表单验证</div> </templ ...
- JAVA面试宝典分享
JAVA面试宝典分享 前言 面试题 Java面试题(上) Java面试题(中) Java面试题(下) 参考答案 其他补充内容: 项目经验 项目介绍 项目开发流程 项目管理 系统架构 第三方工具(插件) ...
- 2018-div-matrix 题解(打表)
题目链接 题目大意 要你求有多少个满足题目条件的矩阵mod 1e9+7 \(a[1][1]=2018\;\;a[i][j]为a[i-1][j]和a[i][j-1]的因子\) 题目思路 dp也就图一乐, ...
- linux下安装python3.7.1
一.安装依赖环境 输入命令:yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readlin ...
- python应用(6):函数
在流程很简单的时候,或者流程不简单但我们不需要考虑开发维护成本的时候,平面地组织你的代码就够了,不用费脑子,不需要考虑层次或重用的东西.当事情变得越来越复杂时,当同行对代码质量要求越来越高时,有一些重 ...
- java46
1.迭代器遍历 import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; public c ...
- AOV图与拓扑排序&AOE图与关键路径
AOV网:所有的工程或者某种流程可以分为若干个小的工程或阶段,这些小的工程或阶段就称为活动.若以图中的顶点来表示活动,有向边表示活动之间的优先关系,则这样活动在顶点上的有向图称为AOV网. 拓扑排序算 ...