我使用spark-submit选项提交Pyspark / SparkSQL脚本,我需要将运行时变量(数据库名称)传递给脚本
spark-submit命令:
spark-submit --conf database_parameter=my_database my_pyspark_script.py
pyspark脚本
database_parameter = SparkContext.getConf().get("database_parameter")
DF = sqlContext.sql("SELECT count(*) FROM database_parameter.table_name")
火花版是:1.5.2 我正在尝试的解决方案无效。错误是:AttributeError:类型对象'SparkConf'没有属性'getConf'。
我正在寻找一种在通过spark-submit调用脚本时传递运行时变量的方法,并在脚本中使用这些变量。
答案 0 :(得分:2)
您可以使用通常的sys.argv
<强> args.py 强>
#!/usr/bin/python
import sys
print sys.argv[1]
然后你 spark-submit
:
spark-submit args.py my_database
这将打印:
my_database