在Pycharm上編寫WordCount程序
本篇博客將給大家介紹怎麽在PyCharm上編寫運行WordCount程序。
第一步 下載安裝PyCharm
下載Pycharm
PyCharm的下載地址(Linux版本)。
下載完成後你將得到一個名叫:pycharm-professional-2018.2.4.tar.gz文件。我們選擇的是正版軟件,學生可申請免費使用。詳細信息請百度。
安裝PyCharm
執行以下命令解壓文件:
- cd ~/下載
- tar -xvf pycharm-professional-2018.2.4.tar.gz
這時候我們可以在下載目錄看到一個pycharm-2018.2.4文件夾。接下來我們把它放到/usr/local下,並且重命名
- sudo mv ./pycharm-2018.2.4 /usr/local/pycharm
然後我們要執行pycharm.sh文件,完成首次安裝:
- cd /usr/local/pycharm/bin
- ./pycharm.sh
等待之後我們可以看到如下圖界面:
選擇不導入設置,點擊OK。然後我們會看到以下界面:
選擇左下角“Skip Remaining and Set Defaults”,默認設置即可,本人更偏愛白色,所以後面的截圖會跟大家不一樣,但是沒有影響。
配置環境變量
配置環境變量的意義在於我們以後不需要每次都到pycharm文件夾下去啟動程序。
- sudo vim ~/.bashrc
將下面內容復制到文件的開頭部分。
- #pycharm
- export PyCharm_HOME=/usr/local/pycharm
- export PATH=${PyCharm_HOME}/bin:$PATH
完成以上操作後你就可以在終端直接使用:pycharm.sh命令打開程序了。
第二步 創建並運行WordCount程序
創建工程文件
在開始界面選擇“Create New Project”
接下來按照下圖操作,修改圖中兩處紅框內容,project起名為WordCount,python選擇3.6版本,沒有的請安裝。
最後點擊Create,完成項目創建。
創建python文件
右鍵點擊WordCount文件夾,選擇New -> Python File,可以看到以下界面,我們取文件名為WordCount。
然後我們在WordCount.py中復制以下代碼:
- #-*- coding:utf8-*-
- from pyspark import SparkConf, SparkContext
- conf = SparkConf().setAppName("WordCount").setMaster("local")
- sc = SparkContext(conf=conf)
- inputFile = "hdfs://localhost:9000/user/way/word.txt"
- textFile = sc.textFile(inputFile)
- wordCount = textFile.flatMap(lambda line : line.split(" ")).map(lambda word : (word, 1)).reduceByKey(lambda a, b : a + b)
- wordCount.foreach(print)
這時候你會看到PyCharm自動報錯,代碼中帶紅色波浪線部分為PyCharm提示的錯誤。缺少pyspark等。接下來我們要利用pycharm自動幫我們安裝pyspark。把鼠標放到帶紅色波浪線的地方,並且將光標點進錯誤的地方,如下圖,會出現一個小紅燈泡。
點擊小紅燈泡,選擇“Install package pyspark”,等待程序自動安裝完成,在程序底部可看到正在安裝的提示。
補充說明一下代碼。
我的inputFile = “hdfs://localhost:9000/user/way/word.txt”
這個文件是放在hdfs偽分布式文件系統上的,這時候你必須開啟hdfs文件系統,相關操作查看實驗室相關博客。
你也可以選擇本地文件inputFile = “file:///home/way/桌面/word.txt”。 當然在這些位置你必須有這個word.txt文件。
Pycharm運行WordCount
然後你可以右鍵點擊代碼頁面,選擇Run “WordCount”。可以看到以下結果:
提交到spark運行
我們也可以把代碼提交到Spark運行,具體方法是:
打開終端,打開Spark安裝目錄,並執行提交任務命令:
- cd /usr/local/spark/
- ./bin/spark-submit /home/way/PycharmProjects/WordCount/WordCount.py
翻一下我們的輸出信息可以找到以下結果:
至此我們完成了在pycharm用python編寫wordcount程序的實驗。
本文作者 http://dblab.xmu.edu.cn/blog/2295/在Pycharm上編寫WordCount程序