如何理解spark on yarn内存分配
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,如何理解spark on yarn内存分配,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1. 基础概念要掌握这个知识点,要了解以下几个点
千家信息网最后更新 2025年12月01日如何理解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安全错误
数据库的锁怎样保障安全
服务器硬盘和普通硬盘
江西昌大高科网络技术有限公司
如何检测检查代理服务器
数据库系统组成及相互关系
进口服务器网络机柜价格
DIY名片软件开发
机关事务局电子邮件网络安全
网络安全专家特训营
禾匠商城saas版服务器配置
清空数据库某张表整个数据
江西网络安全审计硬件咨询报价
软件开发c语言薪酬
相比题录型数据库
防城港电商软件开发
软件开发经济学
火车上的网络技术
邹平销售软件开发
web 数据库 异步
弟子规朗读软件开发
重庆虚拟服务器管理软件云主机
镇江手机软件开发项目
武汉警示教育体验中心软件开发
太原理工大学查重数据库
拉力赛视频软件开发
对日软件开发式样提问题
西安网络技术操作
国家安全网络安全相关案例
数据库的建立和运行
戴旭评服务器
伤害世界服务器