spark-submit :将运行时变量传递给 spark 脚本

spark-submit : pass runtime variable to spark script

我正在使用 spark-submit 选项提交 Pyspark/SparkSQL 脚本,我需要将运行时变量(数据库名称)传递给脚本

spark-提交命令:

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")

spark 版本为:1.5.2
Python 版本为:2.7.5

我尝试的解决方案无效。错误是:AttributeError: type object 'SparkConf' has no attribute 'getConf'.

我正在寻找一种在通过 spark-submit 调用脚本时传递运行时变量并在脚本中使用这些变量的方法。

您可以使用通常的 sys.argv

args.py

#!/usr/bin/python

import sys
print sys.argv[1]

那你spark-submit吧:

spark-submit args.py my_database 

这将打印:

my_database