神剑山庄资源网 Design By www.hcban.com

方法一

使用findspark

使用pip安装findspark:

pip install findspark

在py文件中引入findspark:

> import findspark
> findspark.init()

导入你要使用的pyspark库

> from pyspark import *

优点:简单快捷
缺点:治标不治本,每次写一个新的Application都要加载一遍findspark

方法二

把预编译包中的Python库文件添加到Python的环境变量中

export SPARK_HOME=你的PySpark目录
export PYTHONPATH=$SPARK_HOME/libexec/python:$SPARK_HOME/libexec/python/build:$PYTHONPATH

优点:一劳永逸
缺点:对于小白可能不太了解环境变量是什么

问题1、ImportError: No module named pyspark

现象:

  • 已经安装配置好了PySpark,可以打开PySpark交互式界面;
  • 在Python里找不到pysaprk。

参照上面解决

问题2、ImportError: No module named ‘py4j'

现象:

已经安装配置好了PySpark,可以打开PySpark交互式界面;
按照上面的b方式配置后出现该问题。
解决方法:

把py4j添加到Python的环境变量中

export PYTHONPATH= $SPARK_HOME/python/lib/py4j-x.xx-src.zip:$PYTHONPATH

注意:这里的py4j-x.xx-src.zip根据自己电脑上的py4j版本决定。

测试成功的环境

  • Python: 3.7、2.7
  • PySpark: 1.6.2 - 预编译包
  • OS: Mac OSX 10.11.1

参考
Stackoverflow: importing pyspark in python shell
Stackoverflow: Why can't PySpark find py4j.java_gateway?

标签:
PySpark导入Python

神剑山庄资源网 Design By www.hcban.com
神剑山庄资源网 免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
神剑山庄资源网 Design By www.hcban.com

评论“如何将PySpark导入Python的放实现(2种)”

暂无如何将PySpark导入Python的放实现(2种)的评论...