Ошибка вида spark.master не задан или сообщение «System type spark not recognized» при запуске приложения почти всегда указывает на то, что среда не понимает, в каком режиме должен работать Apache Spark — локальном или кластерном. Этот параметр определяет, где будут выполняться задачи: на вашем компьютере или на распределённом кластере серверов.

Термин «system type» в контексте Spark обычно относится к типу развёртывания системы: local, standalone, YARN, Mesos или Kubernetes. Понимание различий между ними критично, потому что от выбора режима зависят конфигурация, требования к ресурсам и способы диагностики сбоев. В статье разберём каждый тип, порядок проверки настроек и типичные ошибки запуска.

Что означает system type в Apache Spark

Apache Spark — это распределённый вычислительный движок, и ему нужен менеджер кластера, который выделяет ресурсы под задачи. Параметр spark.master как раз и задаёт «тип системы»: куда драйвер приложения должен подключаться для запуска исполнителей.

Если вы запускаете код через spark-submit или из IDE без явного указания мастера, Spark пытается взять значение из переменных окружения или конфигурационных файлов. Когда значение отсутствует или указано неверно, приложение падает ещё на этапе инициализации контекста.

Проверить текущий режим можно прямо в коде: метод spark.sparkContext.master вернёт строку вида local[*] или spark://host:7077. Это первый диагностический шаг при любых проблемах с запуском.

💡

«System type» в Spark — это режим работы мастера (local, standalone, YARN, Kubernetes), задаваемый параметром spark.master. Ошибки запуска чаще всего связаны именно с его отсутствием или неверным значением.