Перегруженный драйвер Spark
Поэтому вы определили, что драйвер перегружен. Наиболее распространенной причиной этого является слишком много параллельных операций, выполняемых в кластере. Это может быть слишком много потоков, запросов или заданий Spark (некоторые клиенты используют потоки для одновременного выполнения множества заданий Spark).
Это также может быть то, что вы выполняете код, отличный от Spark, в кластере, который держит драйвер занят. Если вы видите пробелы в временная шкала, вызванные запуском кода, отличного от Spark, это означает, что все ваши работники простои и, вероятно, тратить деньги во время пробелов. Может быть, это намеренно и неизбежно, но если вы можете написать этот код для использования Spark, вы будете полностью использовать кластер. Начните с этого руководства , чтобы узнать, как работать с Spark.
Если в кластере одновременно работает слишком много вещей, то у вас есть три варианта:
- Увеличьте размер драйвера
- Уменьшение параллелизма
- Распространение нагрузки по нескольким кластерам
Azure Databricks рекомендует сначала попробовать удвоить размер драйвера и узнать, как это влияет на задание.