spark读取本地配置文件
在1.6等1.x版本中读取本地配置文件需要先在submit脚本中添加如下配置1
--files /data/apps/config.properties
然后在spark的main方法中就可以使用如下方式读取了1
2
3
4val filePath = "config.properties"
LogUtil.info(filePath)
val props = new Properties()
props.load(new FileInputStream(filePath))
具体的代码可以参考
https://blog.csdn.net/u012307002/article/details/53308937
但是自从2.0以后,可以使用一种简单的方式读取本地配置文件。
不需要先配置–files参数。1
2
3
4val filePath = "/data/apps/public/config.properties"
LogUtil.info(filePath)
val props = new Properties()
props.load(new FileInputStream(filePath))
/data/apps/public/config.properties在启动脚本所在本地服务器磁盘上。
也可以通过在打成的jar文件的后边跟上参数比如1
2
3
4
5
6
7
8
9#!/bin/bash
. ~/.bash_profile
/data/work/spark-2.2/bin/spark-submit \
--name AppTempTransformation \
--class com.hohode.statistics.AppTempTransformation \
--master yarn \
--driver-memory 3g --executor-memory 5g --total-executor-cores 5 \
/var/lib/transformatio-dependencies.jar /data/apps/public/config.properties
exit
然后程序中仍然通过如下方式进行读取:1
2
3
4val filePath = "/data/apps/public/config.properties"
LogUtil.info(filePath)
val props = new Properties()
props.load(new FileInputStream(filePath))