Sparkドライバーが過負荷

これで、ドライバーが過負荷になっていると判断しました。 最も一般的な理由は、クラスター上で並列に実行されているものが多すぎることです。 ストリーム、クエリ、または Spark ジョブが多すぎる可能性があります (一部の顧客はスレッドを使用して、多数の Spark ジョブを同時に実行します)。

また、クラスター上で Spark 以外のコードを実行していて、ドライバーがビジー状態になっている可能性もあります。 タイムラインに Spark 以外のコードの実行によるギャップがある場合は、そのギャップ中にワーカーがすべてアイドル状態になり、コストが無駄になっている可能性があります。 これは意図的で避けられないことかもしれませんが、Spark を使用するためにこのコードを記述できれば、クラスターを最大限に活用できます。 Spark の使い方を学ぶには、まずこのチュートリアルから始めましょう。

クラスター上で同時に実行されるものが多すぎる場合は、次の 3 つのオプションがあります。

  • ドライバーのサイズを大きくする

  • コンカレンシーを減らす

  • 複数のクラスターに負荷を分散する

Databricks では、まずドライバーのサイズを 2 倍にして、それがジョブにどのような影響を与えるかを確認することをお勧めします。