在PySpark程序中使用Conda打包Python环境及第三方库
本小节旨在指导用户在PySpark环境中配置Python第三方库,当前版本Spark仅支持Python 3.7、3.8、3.9和3.10 版本。使用其他Python版本可能会导致兼容性问题。通过使用Conda创建独立的Python环境,您可以灵活地安装和管理所需的第三方库,避免与系统Python或其他项目环境产生冲突。
准备工作
确保您的开发环境中已经安装Conda环境,支持Windows和Linux系统,您可以从Anaconda官方网站下载并安装。
创建并打包Conda环境
提交PySpark作业
在提交 PySpark 作业时,添加以下参数。
- 指定压缩包:
--archives R_PATH/pyspark_conda_env.tar.gz#environment # R_PATH为压缩包的hdfs或obs路径
- 配置Python环境:
--archives R_PATH/pyspark_conda_env.tar.gz#environment # R_PATH 为压缩包的hdfs或obs路径 # 在local模式或者yarn-client模式中,需要将上述压缩包上传至提交作业的节点,并解压 --conf spark.pyspark.driver.python=L_PATH/pyspark_conda_env/bin/python # 请勿在Cluster模式中设置此参数,L_PATH为本地解压目录 --conf spark.pyspark.python=./environment/bin/python
- 对于pyspark shell交互式作业:
pyspark --archives R_PATH/pyspark_conda_env.tar.gz#environment --conf spark.pyspark.driver.python=L_PATH/pyspark_conda_env/bin/python # L_PATH为pyspark_conda_env.tar.gz压缩包在本节点的解压目录 --conf spark.pyspark.python=./environment/bin/python