SparkContext

SparkContext是Spark的入口,可以通过SparkConf来创建它。配置SparkConf时有许多选项,包括应用程序名称、Master、内存大小等。例如:

    val sparkConf = new SparkConf().setAppName("FromPostgreSql")
      .setMaster("local[4]")
      .set("spark.executor.memory", "2g")
    val sc = new SparkContext(sparkConf)

如果是在编程环境下,我们通常会在main()函数下创建SparkContext。当执行完毕后,可以调用stop()方法来终止它。

我曾经尝试在一个Actor中去创建SparkContext,例如:

class SparkJobActor extends Actor {
  def receive = {
    case query:QueryMessage =>
      val sparkConf = new SparkConf().setAppName("MortSpark")
        .setMaster("local[*]")
        .set("spark.executor.memory", "2g")
      val sc = new SparkContext(sparkConf)

      //...
  }
}

但是在执行到创建SparkContext时,系统就抛出了错误,未能成功创建SparkContext。

results matching ""

    No results matching ""