Клянусь, что я сделал это раньше, но не могу найти код или ответ. Я хочу получить имя текущего запущенного SparkContext и прочитать его в переменной или распечатать его на экране. Что-то вдоль линий:Найти имя текущего запуска SparkContext
val myContext = SparkContext.getName
Так, например, если бы я был в свече скорлупе и побежал было бы вернуть «SC». Кто-нибудь знает, как это получить?
Если я создал VAL СБН = новые SparkContext() Позже я хочу, чтобы иметь возможность сказать что-то вроде валь CtxName = SparkContext.name и возврата «SC» или что-то я мог бы бросить в виде строки со значением «СБН». Причина, по которой я пытаюсь сделать это, я пытаюсь использовать стороннюю библиотеку, которая создает (предположительно) SparkContext для меня, но, похоже, она не существует, и если это так, она называется soemthing, отличной от «sc», , Я надеялся просто получить имя, чтобы проверить его exeitence, а затем сможет создать с ним новый SQLContext, а не копаться в их коде, чтобы понять это. –
Умм, я не думаю, что экземпляр знает имя val, в котором он хранится. Что вы, по сути, просите, это SparkContext, чтобы знать, где хранятся экземпляры, которые кажутся немного сумасшедшими. Если вы используете библиотеку, которая создает для вас контекст, просто посмотрите на их код, чтобы увидеть, как он называется (если вы наследуете черту или другой класс, это не должно быть слишком сложно). –
Я только что обновил свой ответ с чем-то, что может вам помочь - статический метод 'getOrCreate' в' SparkContext' вернет ранее созданный и зарегистрированный контекст или даст вам новый. Я не думаю, что вы можете запускать несколько экземпляров контекста параллельно, поэтому, если он есть, вы должны его получить. –