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有問題,歡迎給我留言共同交流:)