spark-submit提交python任务

本文介绍了如何解决在Spark提交Python任务时遇到的依赖模块缺失问题,通过将Anaconda环境打包并上传到HDFS,然后使用conda或pip安装所需模块。在运行`spark-submit`时,利用`--conf`指定Python环境以确保驱动器和执行器环境一致。此外,还提到了编写Python脚本的注意事项,如创建SparkContext和确保所有导入操作在SparkContext初始化之后进行。提供了一个简单的Python脚本示例,用于计算包含字符“i”的行数。
摘要由CSDN通过智能技术生成

1、提交python文件,遇到的难点是python文件缺乏运行所需要的依赖模块。

python3 -m pip install xx

我使用的是将anaconda打包放在HDFS上。

基础是已经有同事在linux服务器上安装好了anaconda2,很方便。

首先是将文件夹,打包成zip格式: zip -r  anaconda2.zip anaconda2。然后上传文件至HDFS服务器。

对于缺乏的模块,可以使用conda 或者pip进行添加。

最后是运行命令

spark-submit  \
--master yarn \
--deploy-mode client \
--num-executors 4 \
--executor-memory 5G \
--archives hdfs:///anaconda2.zip#anaconda2 \
--conf spark.yarn.appMasterEnv.PYSPARK_PYTHON=./anaconda2/anaconda2/bin/python2 \
test.py

spark-submit使用指定的python环境

参考spark Configuration,有如下描述:

配置                                           描述
spark.pyspark.driver.python    Python binary executable to use for PySpark in driver. (default is spark.pyspark.python)
spark.pyspark.python    Python binary executable to use for PySpark in both driver and executors.
使用--conf指定python环境:


--conf
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值