在spark应用提交到集群时,如果我们需要加载本地(驱动节点)的配置文件时,如:
...
spark-submit \
-class ...
-jars ...
-jar ...
file:///yourLocalFilePath/conf.properties
在解析该配置文件时,通常我们将其处理为HashMap形式,通过key-value方式实现便捷的配置参数读取。具体实现方式如下:
package com.gendlee1991.utils
import java.io.{
FileInputStream, FileNotFoundException, InputStreamReader}
import java.util.Properties
import org.apache.commons.logging.LogFactory
import org.apache.hadoop.conf.Configuration
import org.apache.hadoop.fs.{
FSDataInputStream, Path}
import scala.collection.mutable.HashMap
class BigDataConf(propertiesPath: String) extends Serializable
{
val log = LogFactory.getLog(classOf[BigDataConf])
private val settings = new HashMap[String, String]()
load(propertiesPath)
def load(propertiesPath: String)
{
loadProPertiesFile(propertiesPath)
}
def loadProPertiesFile(propertiesPath: String)
{
var in: FSDataInputStream = null
var inr: InputStreamReader = null
try
{
val conf = new Configuration()
val path = new Path(propertiesPath

本文介绍如何在Spark应用提交到Hadoop集群时加载本地配置文件,并将其转化为HashMap进行key-value读取。提交脚本将本地文件作为主函数参数传递,详细步骤和参考资料提供。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



