如何将外部配置文件传递给pyspark(Spark 2.x)程序?
当我运行pyspark程序时,interactive shell能够获取pyspark脚本中的配置文件(config.ini), 但是,当我尝试使用Spark submit命令和master Thread一起运行同一个脚本时,集群部署模式为cluster,由于配置文件不存在,这会给我带来错误,我检查了Thread日志,并能够看到相同的结果,下面是运行pyspark作业的命令如何将外部配置文件传递给pyspark(Spark 2.x)程序?,pyspark,Pyspark,当我运行pyspark程序时,interactive shell能够获取pyspark脚本中的配置文件(config.ini), 但是,当我尝试使用Spark submit命令和master Thread一起运行同一个脚本时,集群部署模式为cluster,由于配置文件不存在,这会给我带来错误,我检查了Thread日志,并能够看到相同的结果,下面是运行pyspark作业的命令 spark2-submit --master yarn --deploy-mode cluster test.py /ho
spark2-submit --master yarn --deploy-mode cluster test.py /home/sys_user/ask/conf/config.ini
使用spark2-sumbmit命令,有参数提供的属性文件,您可以使用该文件在spark-submit命令中获得此属性文件
e、 g.spark2提交--主纱线--部署模式群集--属性文件$CONF_file_NAMEpyspark_script.py在spark.files参数中传递ini文件
.config('spark.files', 'config/local/config.ini') \
阅读pyspark:
with open(SparkFiles.get('config.ini')) as config_file:
print(config_file.read())
它适合我。使用spark2 sumbmit命令,有参数提供的属性文件,您可以使用该文件在spark提交命令中获得此属性文件。e、 g.spark2提交--主线程--部署模式集群--属性文件$CONF_file pyspark_script.py