Spark系列--Spark On YARN 动态资源

本文介绍了Spark On YARN环境下如何利用动态资源机制提高队列利用率,减少资源浪费。当一个Job的task运行时,其余executor会空闲。开启动态资源功能,可以自动释放这些executor并在后续stage需要时重新申请,从而优化资源使用。启用此功能需调整特定配置参数。
摘要由CSDN通过智能技术生成

一、Spark On YARN 动态资源

利用Spark的动态资源机制可以增加队列的利用率,减少空置,占用的无效使用。

原理:

考虑如下场景:

在Spark On YARN的运行机制下,有一个Application申请了50个executor 每个20G memory,10 个core,Applicaiton有10个job,每个job1个stage。

假设其中一个Job只有一个task并且需要运行50分钟,这时Spark将只使用一个exceutor进行处理, 剩余的49个executor 将空闲50分钟,相当于什么都没做。

打开这个功能后将自动释放这49个executor , 后续stage如果需要资源Spark将再次向YARN申请。

使用时增加如下参数即可:

参数名称 默认值 说明
spark.dynamicAllocation.enabled false 是否使用动态资源分配,根据工作负载对应用程序executor进行扩展
spark.dynamicAllocation.executorIdleTimeout 60s 如果启用了动态分配并且executor已经空闲超过这个时间,executor将被释放
spark.dynamicAllocation.cachedExecutorIdleTimeout
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值