Я пытаюсь запустить потоковую работу искры на оболочке искры, localhost.Следуя коду из здесь , это то, что я впервые попробовал:
import org.apache.spark._
import org.apache.spark.streaming._
import org.apache.spark.streaming.StreamingContext._
val conf = new SparkConf().setMaster("local[2]").setAppName("NetworkWordCount")
val ssc = new StreamingContext(conf, Seconds(30))
, который дает следующие ошибки:
org.apache.spark.SparkException: Onlyв этой JVM может быть запущен один SparkContext (см. SPARK-2243).Чтобы игнорировать эту ошибку, установите spark.driver.allowMultipleContexts = true.
И поэтому мне пришлось попробовать это:
import org.apache.spark._
import org.apache.spark.streaming._
import org.apache.spark.streaming.StreamingContext._
val conf = new SparkConf().setMaster("local[2]").setAppName
("NetworkWordCount").set("spark.driver.allowMultipleContexts", "true")
val ssc = new StreamingContext(conf, Seconds(30))
Это выполняется, но со следующим предупреждением:
2018-05-17 17:01:14 ПРЕДУПРЕЖДЕНИЕ SparkContext: 87 - Обнаружено несколько запущенных SparkContexts в одной и той же JVM!
Поэтому я хотел бы знать, может лиМожно ли еще одним способом объявить объект StreamingContext
, для которого не требуется allowMulipleContexts == True
, так как он выглядит с использованием нескольких контекстов не рекомендуется ?Спасибо