sparkstreaming动态资源分配

在数据高峰期会出现大量job处于queened状态,可以通过调高num-executors参数,以及调高程序的并法度,来解决这个问题,但大多数情况下,根本用不了这么多资源,所以启用资源的动态管理解决这个问题

方法:

配置参数

1. 不开启动态调度. --num-executors=XXX

2. 开启动态调度:

--conf spark.dynamicAllocation.initialExecutors=10 (刚开始分配的Executor个数, 可默认, 默认0)

--conf spark.dynamicAllocation.minExecutors=2 (最小的Executor个数, 可默认, 默认0)

--conf spark.dynamicAllocation.maxExecutors=10 (最多的Executor个数)

--conf spark.dynamicAllocation.enabled=true

如果出现任务等待,会动态添加executor个数,加快数据处理速度,当数据量减少,默认在1min没有新的task执行的时候,就会让出之前的executor

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容