Документы спарк имеют следующий параграф, который описывает разницу между клиентом пряжи и кластером пряжи:
Существует два режима развертывания, которые можно использовать для запуска приложений Spark на YARN. В режиме кластера драйвер Spark запускается в главном процессе приложения, которым управляет YARN в кластере, и клиент может уйти после запуска приложения. В режиме клиента драйвер запускается в клиентском процессе, а мастер приложения используется только для запроса ресурсов из YARN.
Я предполагаю, что есть два варианта по причине. Если так, как вы выбираете, какой использовать?
Пожалуйста, используйте факты, чтобы обосновать свой ответ так, чтобы этот вопрос и ответы отвечали требованиям stackoverflow.
Есть несколько аналогичных вопросов о стековом потоке, однако эти вопросы фокусируются на разнице между двумя подходами, но не фокусируются на том, когда один подход более подходит, чем другой.