Я пишу проект Scala, в котором я хочу, чтобы классы, выполняемые из spark-submit, были представлены в виде jar-класса. (например, spark-submit --class org.project
Мои проблемы следующие:
Я хочу использовать конфигурацию spark-context, которую пользователь устанавливает при отправке с помощью spark, и при желании перезаписать некоторые параметры, такие как имя приложения. Пример: spark-submit --num-executors 6 --class org.project
пропустит 6 в поле числа конфигураций exctors в контексте искры.
Я хочу иметь возможность передавать параметры параметров, такие как --inputFile
или --verbose
, в мой проект, не влияя на параметры искры (возможно, с перекрытием имен)
Пример: spark-submit --num-executors 6 --class org.project --inputFile ./data/mystery.txt
должен передать "--inputFile ./data/mystery.txt"
на вход аргумента метода org.project
main
.
Мой прогресс в этих проблемах следующий:
Я бегу val conf = new SparkConf().setAppName("project");
val sc = new SparkContext(conf);
по моему main
методу
но я не уверен, что все идет так, как ожидалось.
Sparks рассматривает эти необязательные аргументы как аргументы spark-submit и выдает ошибку.
Примечание 1: Мой класс Java project
в настоящее время не наследует никакой другой класс.
Примечание 2: Я новичок в мире искры и не смог найти что-то относительное из базового поиска.