a-b*_*rld 1 configuration hadoop apache-spark apache-spark-sql spark-structured-streaming
我正在使用 Spark Structured Streaming。此外,我正在与Scala. 我想将配置文件传递给我的 spark 应用程序。此配置文件托管在HDFS. 例如;
spark_job.conf (HOCON)
spark {
appName: "",
master: "",
shuffle.size: 4
etc..
}
kafkaSource {
servers: "",
topic: "",
etc..
}
redisSink {
host: "",
port: 999,
timeout: 2000,
checkpointLocation: "hdfs location",
etc..
}
Run Code Online (Sandbox Code Playgroud)
如何将其传递给 Spark 应用程序?如何hosted HDFS在 Spark 中读取此文件()?
您可以通过以下方式从 HDFS 读取 HOCON 配置:
import com.typesafe.config.{Config, ConfigFactory}
import java.io.InputStreamReader
import java.net.URI
import org.apache.hadoop.fs.{FileSystem, Path}
import org.apache.hadoop.conf.Configuration
val hdfs: FileSystem = FileSystem.get(new URI("hdfs://"), new Configuration())
val reader = new InputStreamReader(hdfs.open(new Path("/path/to/conf/on/hdfs")))
val conf: Config = ConfigFactory.parseReader(reader)
Run Code Online (Sandbox Code Playgroud)
您还可以将名称节点的 URI 传递给FileSystem.get(new URI("your_uri_here")),代码仍将读取您的配置。
| 归档时间: |
|
| 查看次数: |
1502 次 |
| 最近记录: |