Pycharm配置Spark避坑指南

PS:本文建立在使用Mac或者linux系统的基础上,也不建议使用window系统进行spark配置=_=

安装JAVA环境

这部没啥好说的吧,上网搜java安装一大把。
切记配置java全局变量

vim ~/.bash_profile 

然后输入

export JAVA_HOME=$(/usr/libexec/java_home)

安装scala

这里推荐Mac党首选工具brew
可以省去你配置全局变量以及管理包这一影响效率的过程
- 安装scala的命令

brew install scala

安装完成后用

$ scala -version

查看是否安装成功

安装Spark

这里有一个坑一定要注意,
不要用brew去安装spark!!!
不要用brew去安装spark!!!
不要用brew去安装spark!!!

因为brew安装完的所有的包地址都在

$ /usr/local/Cellar/

里面,这意味着你在pycharm执行命令会有权限问题的产生

所以我们采用去官网下载包的方式: P

http://spark.apache.org/downloads.html


下载完成后解压

tar -zxvf spark-2.0.1-bin-hadoop2.7.tgz

配置spark路径

vim ~/.bash_profile

配置如下参数(自己本机spark路径,*填自己的真实路径)

export  SPARK_HOME = /Users/***/spark/spark-2.0.1-bin-hadoop2.7
export PATH= $PATH:$SPARK_HOME/bin

如果一切没有配置过SSH,在主目录输入如下命令:

ssh-keygen –t rsa –P 

一直按回车直到结束,接着输入命令,追加私钥:

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

启动Spark

进入Spark目录运行pyspark启动脚本:

$ pyspark

在pycharm中配置spark

首先打开pyCharm 的Perferences > Project Structure

  • 选择右边?的Add Content Root
  • 找到spark的目录
  • 导入py4j和pyspark的包
    包的具体位置为:
spark > python >lib 

配置完成后:

接着我们打开工程右上角的Edit Condigurations

找到Environment Variables配置:

接着配置PYTHONPATH和SPARK_HOME

PYTHONPATH为spark目录下python包的位置
在我的电脑中,PYTHONPATH为

/Users/xulei2/Documents/tmpFile/DataMining/spark-2.2.0-bin-hadoop2.7/python

SPARK_HOME为:

/Users/xulei2/Documents/tmpFile/DataMining/spark-2.2.0-bin-hadoop2.7

点击确认,配置成功:)

测试是否能够正常运行
import sys

try:
    from pyspark import SparkContext
    from pyspark import SparkConf

    print ("Successfully imported Spark Modules")
except ImportError as e:
    print ("Can not import Spark Modules", e)
    sys.exit(1)

sc = SparkContext("local","apple")
words = sc.parallelize(["scala", "java", "hadoop", "spark", "akka"])
print(words.count())

输入下面结果即为正常

brew安装的种种坑

这里就不提了,别用brew安装spark就成,我是配置了一个下午无果,始终显示

Java gateway process exited before sending the driver its port number

如果有老司机能够给予解答,万分感谢,毕竟brew配置spark比起自己手动配置方便了不是一点两点- -

如果其他童鞋配置spark有问题,欢迎给我留言共同交流:)

你可能感兴趣的:(Python学习笔记)