SparkContext 和 SparkConf
任何Spark程序都是SparkContext开始的,SparkContext的初始化需要一个SparkConf对象,SparkConf包含了Spark集群配置的各种参数。
初始化后,就可以使用SparkContext对象所包含的各种方法来创建和操作RDD和共享变量。
val conf = new SparkConf().setMaster("master").setAppName("appName") val sc = new SparkContext(conf) 或者 val sc = new SparkContext("master","appName")
Note:
Once a SparkConf object is passed to Spark, it is cloned and can no longer be modified by the user.
也就是说一旦设置完成SparkConf,就不可被使用者修改
对于单元测试,您也可以调用SparkConf(false)来跳过加载外部设置,并获得相同的配置,无论系统属性如何。
咱们再看看setMaster()和setAppName()源码: