当我们使用书写spark代码 val conf =new SparkConf 的时候:
- 配置时如何初始化的?
- 还有spark会加载哪些配置?
- 除了加载配置,还做了什么事情?
SparkConf 的成员变量
sparkconf存放配置一个map,这个map是线程安全,
内部代码:private val settings = new ConcurrentHashMap[String, String]()
SparkConf 创建实例的过程
- 1.读取虚拟机的配置System.getProperties
- 2.遍历配置项,筛选spark. 开始的配置
- 3. spark. 开始的配置项的配置是否在过期配置如果在过时配置,则输出warn日志提示配置过期
- 4.把spark. 的配置项加入 settings这个map中
SparkConf 其他方法
spark其他方法主要是围绕settings这个map的读写操作,例如:
- setMaster 就是设置settings的spark.master 这个配置
- getLong 就是取一个参数把参数类型转换成Long