pyspark提交代码到yarn模式,报错ImportError: No module

本文详细阐述了在PySpark任务于YARN集群环境下,解决numpy等Python包缺失问题的具体步骤。从创建虚拟环境、打包上传至HDFS,到spark-submit命令配置及环境变量设置,提供了一套完整方案,确保大数据分析任务顺利执行。

上一篇:PySpark任务在YARN集群上运行 关联python包numpy pandas scipy 等
 

问题:

在提交ALS.train代码到yarn模式的时候,会出现如下报错:

import numpy as np
ImportError: No module named numpy


说pandas的的dependency numpy包不存在,但事实上install pandas时,numpy必定是已经装过的,所以就到处找,应该是环境没有设置

解决方式:

1. 创建虚拟python环境

这个不多介绍了,不管是通过annaconda还是virtualenv,创建好你自己的python环境。如果你也碰到了离线的平台,建议查看上面的 坑2:自己用docker做一个和服务器一样的系统版本,在上面完成虚拟的环境的创建,再将其拷贝出来;


2. 打包虚拟环境并将其上传hdfs

创建好环境后,进入到环境所在的文件夹,例如你的环境是 ***/***/project_env, cd到project_env下,使用打包命令将当前目录下的文件打包

zip -r project_env.zip ./*

在当前文件夹下,将其上传至hdfs

hadoop fs -put ***/***/project_env/project_env.zip hdfs://***/***/***/env/

3. 使用spark-submit命令引用

client模式下


                
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值