如何理解spark on yarn内存分配
发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,如何理解spark on yarn内存分配,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1. 基础概念要掌握这个知识点,要了解以下几个点
千家信息网最后更新 2025年01月22日如何理解spark on yarn内存分配1. 基础概念 要掌握这个知识点,要了解以下几个点:
首先,讲一下上面的这三个概念吧: 1). spark.driver.memory 默认值1g。driver进程的on-heap内存,driver进程就是sparkcontext初始化所在的进程。在client模式下driver的堆内存,不要通过SparkConf设置,要用--driver-memory命令替换,或者在默认的配置文件里配置。 2). spark.driver.memoryOverhead 默认值是max(DriverMemory*0.1,384m)。在YARN或者kubernetes模式的cluster模式下,driver端申请的off-heap内存的总量,通常是driver堆内存的6%-10%。 3). spark.executor.memory 默认值1g。Executor的jvm内存总量。 4). spark.executor.memoryOverhead 默认值max(executor*0.1,384).单个executor申请的off-heap内存的总量。该参数仅仅支持在yarn或者kubernetes上使用,通常可以是executor内存的0.06-0.1。 5).spark.yarn.am.memory 默认值512m,Appmaster在client模式下的内存。假如是Cluster模式下会使用spark.driver.memory来代替。 6).Yarn的最小调度单元 yarn调度container有个最小粒度,资源调度的时候必须是其整数倍,最小粒度的配置参数是 最小调度单元默认值是1024,单位是mb。 2.cluster模式 浪尖这里的案例是40个executor,单个executor内存申请的时候是20GB,driver是20GB,yarn的web ui截图如下: 整个APP申请的总内存是 923648MB=902GB。 spark app申请的单个 Executor内存,从1.3和1.4可以得知是:
那么40个executor内存是:
spark on yarn 的cluster模式下Driver端与appmaster是在一起的,所以appmaster内存参数无效,因此driver和executor总内存由1.1和1.2可得: 那么计算所得的总内存是: 上面计算的案例中,由于浪院长这里的yarn集群内存调度的最小粒度是1GB貌似,在上面的计算中没有参与度。 3.cluster模式下
此时假设是10个executor,每个executor的内存是19GB,driver的内存依然是19GB。 首先,我们先看一下,web ui的总内存:
换算成GB就是236544MB/1024 = 231GB
那么经计算可以指导单个executor的内存是: 19*1.1GB =20.9GB Yarn的最小调度单元是1GB,所以单个executor调度的时候内存是21GB。 10个executor的总内存就是 21 *10 = 210GB 经计算可以得到driver的内存是19*1.1GB= 21GB 那么计算所得的spark app内存和 yarn ui上所得内存一致。 4.注意点
上述计算要想正确要确保: 没有开启动态executor申请与释放,假设开启了,要视情况计算。
如何理解spark on yarn内存分配,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
spark driver和executor的on-heap内存是如何配置的。 spark driver和excutor的off-heap内存是如何配置的。 yarn的最小调度单元。
yarn.scheduler.minimum-allocation-mb
20GB * 0.1 +20GB=22GB
22GB * 40 = 880GB
20GB * 0.1 +20GB=22G
22GB+88 GB正好是 902GB。
看完上述内容,你们掌握如何理解spark on yarn内存分配的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
内存
模式
调度
最小
单个
配置
单元
参数
就是
总量
所得
时候
粒度
进程
分配
内容
方法
更多
案例
概念
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
江苏网络技术服务什么价格
汉中5g软件开发培训技校
重庆hp服务器维修多少钱
数据库表设置多列不能输入重复值
数据库的查询操作日志记录
海南大学网络安全调剂
游戏软件开发计划
软件开发奇葩客户
公安部关于网络安全检查
什么是零售行业的软件开发
火蔓延软件开发
国外服务器云免流系统
课程设计软件开发
国际服如何跳过60天换服务器
马云手机网络安全
传奇服务器授权
云南省电信服务器地址云主机
银行网络安全风险排查方案
英雄联盟的服务器多少钱一个
关系数据库是以的形式组织
数据库怎么去除字符集
北京智慧加互联网科技
x299服务器主板
怎么创建自己的ip代理服务器
学校网络安全自查清单
迪尔西科技互联网发展
网络技术s1s
无锡进口服务器市面价
图书馆软件开发测试过程
跑服务器