如何将PySpark导入Python的放实现(2种)
(编辑:jimmy 日期: 2024/11/18 浏览:3 次 )
方法一
使用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?
下一篇:基于python实现对文件进行切分行