Spark On YARN部署模式下的内存分配情况
来源:互联网 发布:华中数控车床编程 编辑:程序博客网 时间:2024/05/16 14:31
本文主要了解Spark On YARN部署模式下的内存分配情况,因为没有深入研究Spark的源代码,所以只能根据日志去看相关的源代码,从而了解“为什么会这样,为什么会那样”。
说明
按照Spark应用程序中的driver分布方式不同,Spark on YARN有两种模式: yarn-client
模式、yarn-cluster
模式。
当在YARN上运行Spark作业,每个Spark executor作为一个YARN容器运行。Spark可以使得多个Tasks在同一个容器里面运行。
关于Spark On YARN相关的配置参数,请参考Spark配置参数。本文主要讨论内存分配情况,所以只需要关注以下几个内心相关的参数:
spark.driver.memory
:默认值512mspark.executor.memory
:默认值512mspark.yarn.am.memory
:默认值512mspark.yarn.executor.memoryOverhead
:值为executorMemory * 0.07, with minimum of 384
spark.yarn.driver.memoryOverhead
:值为driverMemory * 0.07, with minimum of 384
spark.yarn.am.memoryOverhead
:值为AM memory * 0.07, with minimum of 384
注意:
--executor-memory/spark.executor.memory
控制 executor 的堆的大小,但是 JVM 本身也会占用一定的堆空间,比如内部的 String 或者直接 byte buffer,spark.yarn.XXX.memoryOverhead
属性决定向 YARN 请求的每个 executor 或dirver或am 的额外堆内存大小,默认值为max(384, 0.07 * spark.executor.memory
)- 在 executor 执行的时候配置过大的 memory 经常会导致过长的GC延时,64G是推荐的一个 executor 内存大小的上限。
- HDFS client 在大量并发线程时存在性能问题。大概的估计是每个 executor 中最多5个并行的 task 就可以占满写入带宽。
另外,因为任务是提交到YARN上运行的,所以YARN中有几个关键参数,参考YARN的内存和CPU配置:
yarn.app.mapreduce.am.resource.mb
:AM能够申请的最大内存,默认值为1536MByarn.nodemanager.resource.memory-mb
:nodemanager能够申请的最大内存,默认值为8192MByarn.scheduler.minimum-allocation-mb
:调度时一个container能够申请的最小资源,默认值为1024MByarn.scheduler.maximum-allocation-mb
:调度时一个container能够申请的最大资源,默认值为8192MB
阅读全文
0 0
- Spark On YARN部署模式下的内存分配情况
- Spark on yarn的内存分配问题
- Spark on yarn的内存分配问题
- Spark on yarn的内存分配问题
- Spark On YARN内存分配
- Spark On YARN内存分配
- Spark On YARN内存分配
- Spark On YARN内存分配
- Spark On YARN内存分配
- Spark On YARN内存分配
- Spark On YARN内存分配
- Spark On YARN内存和CPU分配
- Spark On YARN内存和CPU分配
- Spark On YARN内存和CPU分配
- Spark On YARN内存和CPU分配
- Spark On YARN内存分配(2)
- Spark On YARN内存和CPU分配
- Spark on Yarn部署
- 关于kmalloc、vmalloc及kmap
- ELK日志分析系统搭建介绍
- Azure、Aliyun、O365、Digicert 资源准备就绪......
- 关于JS AJAX的POST和GET区别
- 通过出生年月,分组查询人口年龄段人数
- Spark On YARN部署模式下的内存分配情况
- Ionic3 安装git路径插件遇到的问题
- 云计算行业近期安全大事件分析报告
- 绘制线的参数说明
- 蓄水池抽样问题
- 全栈工程师之路-中级篇之小程序开发-第二章第一节小程序的模板-评分星星模板
- Activity详解、Intent使用、Fragment详解-Android基础知识整理
- udf--获取系统当前时间
- 彻底清除ie缓存