gpt4 book ai didi

apache-spark - 将命令行参数传递给 Spark-shell

转载 作者:行者123 更新时间:2023-12-03 15:06:47 25 4
gpt4 key购买 nike

我有一个用 scala 编写的 spark 工作。我用

spark-shell -i <file-name>

运行作业。我需要将命令行参数传递给作业。现在,我通过一个 linux 任务调用脚本,我在其中执行
export INPUT_DATE=2015/04/27 

并使用环境变量选项通过以下方式访问该值:
System.getenv("INPUT_DATE")

有没有更好的方法来处理 Spark-shell 中的命令行参数?

最佳答案

我的解决方案是使用自定义键来定义参数,而不是 spark.driver.extraJavaOptions ,以防有一天您传入一个可能会干扰 JVM 行为的值。

spark-shell -i your_script.scala --conf spark.driver.args="arg1 arg2 arg3"

您可以像这样从 scala 代码中访问参数:
val args = sc.getConf.get("spark.driver.args").split("\\s+")
args: Array[String] = Array(arg1, arg2, arg3)

关于apache-spark - 将命令行参数传递给 Spark-shell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29928999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com