Spark 驱动程序重载
你确定你的驱动程序过载了。 最常见的原因是群集上运行的并发内容过多。 这可能是过多的流、查询或 Spark 作业(某些客户使用线程并发运行多个 Spark 作业)。
另一种可能的情况是你在群集上运行非 Spark 代码,导致驱动程序忙碌。 如果你发现由于运行非 Spark 代码而导致时间线出现间隙,这意味着你的工作线程都处于闲置状态,并且在间隙期间可能会浪费资金。 也许这是有意为之,而且不可避免,但如果你可以编写此代码来使用 Spark,则可以充分利用群集。 从本教程开始,了解如何使用 Spark。
如果同时在群集上运行的内容过多,则有三个选项:
- 增大驱动程序的大小
- 减少并发
- 在多个群集上分散负载
Azure Databricks 建议首先尝试将驱动程序的大小加倍,并查看对作业产生何种影响。