You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何优化Databricks自动扩缩容,平衡PySpark作业成本与时效

Databricks工作负载成本优化问题

工作负载与约束条件

  • 工作负载:通过Databricks调度作业,Driver使用PySpark运行涉及10至200个需读写存储的DataFrame,该负载可通过并行处理提升效率。
  • 成本约束:实例按最低1小时计费,作业耗时不足1小时会造成成本浪费;所有作业需在1小时内完成。

现有扩缩容方案的问题(实例类型固定)

不启用自动扩缩容

  • 仅用1个worker:50个DataFrame作业耗时30分钟,但200个DataFrame作业耗时2小时,超出1小时时效限制。
  • 配置3个worker:200个DataFrame作业耗时45分钟(符合时效),但50个DataFrame作业仅需12分钟,因最低1小时计费规则仍会浪费大量成本。

启用自动扩缩容(最小worker数设为1)

  • 该方案对大负载适配性好,但多数作业为小负载:50个DataFrame作业启动5分钟后,集群从1个worker按4个步长扩容至5个,作业15分钟内完成,仍因提前扩容造成明显成本浪费,且1小时时效为硬性限制。

已尝试但无效的方案

  • 预先设置实例数:无法实现,工作负载大小仅能在作业启动后确定。
  • Spark配置调整executor参数:使用.config("spark.executor.cores", "1").config("spark.executor.instances", "1")调整executor数量与核数,未生效。
  • Driver代码控制自动扩缩容:Databricks不支持该操作。

内容的提问来源于stack exchange,提问作者The indian guy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 10:42:10