Pycharm開發spark程序

Pycharm開發spark程序

使用pycharm連接spark開發python程序。

1.Pycharm本地開發spark程序

1.安裝Java

安裝Java8 64bit,安裝目錄是 C:\Java,注意,安裝目錄不要有空格,也不要有中文這些,不然會出現不可預知的錯誤。
配置環境變量

JAVA_HOME : C:\Java\jdk8
CLASSPATH : .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; (注意開始是有一點的,分號結尾)
PATH : ;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; (記得分號結尾)

在cmd中輸入 javac 或java –version 查看安裝情況。

2.安裝scala

spark是是用scala開發的,安裝scala環境,對spark的支持會好些。
scala的版本是有要求的,spark2之後是用的scala2.11,scala2.10和2.10的版本差別還是蠻大的,spark官網也說到版本對應的問題。
安裝scala也很簡單,安裝完成後需要配置環境變量。

SCALA_HOME : C:\scala
CLASSPATH : .;%SCALA_HOME%\bin;%SCALA_HOME%\lib\dt.jar;%SCALA_HOME%\lib\tools.jar;
PATH : %SCALA_HOME%\bin;%SCALA_HOME%\jre\bin;

在cmd中輸入scala,測試安裝是否完成。

2.安裝Hadoop

其實不需要的。
下載hadoop-2.7.3.tar,解壓至 D:\hadoop_spark\hadoop-2.7.3,下載winutils.exe 並放置在Hadoop的bin目錄下。這是因爲Hadoop要再windows上跑還需要這個編譯程序,在linux下在不需要這麼麻煩。
配置Hadoop環境變量

HADOOP_HOME : D:\hadoop_spark\hadoop-2.7.3
PATH : %HADOOP_HOME%\bin;  (注意分號結尾)

4.安裝spark

下載spark-2.0.2-bin-hadoop2.7.tgz,解壓至 D:\hadoop_spark\spark-2.0.2-bin-hadoop2.7,配置環境變量

SPARK_HOME :D:\hadoop_spark\spark-2.0.2-bin-hadoop2.7
PATH : %SPARK_HOME%\bin;  (注意分號結尾)

在cmd中輸入pyspark,測試安裝是否正常。

5.安裝python和pycharm

安裝anaconda的python發行版,一般做分析都是用這個版本。
安裝目錄是 C:\Anaconda3
安裝pycharm社區版。

6.配置pyspark的地址

C:\Anaconda3\Lib\site-packages目錄下新建pyspark.pth,內容是D:\hadoop_spark\spark-2.0.2-bin-hadoop2.7\python
即spark目錄下的的python目錄,也就是spark的python API.

注意到沒,其實就是將pyspark當做一個普通的python包對待而已,沒有做其他的配置。

7.測試

在pycharm中新建spark_test項目,再新建一個test.py文件,內容是:

from pyspark import SparkContext

sc = SparkContext("local","Simple App")
doc = sc.parallelize([['a','b','c'],['b','d','d']])
words = doc.flatMap(lambda d:d).distinct().collect()
word_dict = {w:i for w,i in zip(words,range(len(words)))}
word_dict_b = sc.broadcast(word_dict)

def wordCountPerDoc(d):
    dict={}
    wd = word_dict_b.value
    for w in d:
        if dict.get(wd[w],0):
            dict[wd[w]] +=1
        else:
            dict[wd[w]] = 1
    return dict
print(doc.map(wordCountPerDoc).collect())
print("successful!")

運行,查看是否有問題。

2.Pycharm遠程開發spark程序

參考pycharm遠程開發,我猜只是將python配置位遠程python就可以了。

3.參考

http://www.tuicool.com/articles/iAbInuj
http://blog.csdn.net/cdhnlsj/article/details/51018334
http://blog.csdn.net/ydq1206/article/details/51922148

發佈了61 篇原創文章 · 獲贊 163 · 訪問量 42萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章