1. 程式人生 > >IntelliJ IDEA(Community版本)的下載、安裝和WordCount的初步使用(本地模式和叢集模式)

IntelliJ IDEA(Community版本)的下載、安裝和WordCount的初步使用(本地模式和叢集模式)

  不多說,直接上乾貨!

  對於初學者來說,建議你先玩玩這個免費的社群版,但是,一段時間,還是去玩專業版吧,這個很簡單哈,學聰明點,去搞到途徑啟用!可以看我的部落格。

包括:

   IntelliJ IDEA(Community)的下載

   IntelliJ IDEA(Community)的安裝

   IntelliJ IDEA(Community)中的scala外掛安裝

   用SBT方式來建立工程 或 選擇Scala方式來建立工程

   本地模式或叢集模式

 

 我們知道,對於開發而言,IDE是有很多個選擇的版本。如我們大部分人經常用的是如下。

   而我們知道,對於spark的scala開發啊,有為其專門設計的eclipse,Scala IDE for Eclipse

  

  這裡,我們知道,spark的開發可以通過IntelliJ IDEA或者Scala IDE for Eclipse,包括來構建spark開發環境和原始碼閱讀環境。由於IntelliJ IDEA對scala的支援更好,所以目前spark開發團隊使用IntelliJ IDEA作為開發環境。強烈推薦!

1、IntelliJ IDEA(Community)的下載

  

一般,我們使用選擇免費的社群版就好了,不過Apache的貢獻者可以免費獲得商業發行版的使用權。

我們找歷史版本,Windows7下安裝IntelliJ IDEA Community Edition 2016.1.3(64)。

 2、IntelliJ IDEA(Community)的安裝

 

Idea 201*.*之後的64位需要JDK1.8了。很多都是需要jdk1.8。

而我的,

 

所以,就一直出現,不出來64位選擇的問題。

而,Hadoop那邊,一般以jdk1.7為主。為穩定。

為此,新增jdk1.8。

C:\Program Files\Java\jdk1.8.0_66

 

至於,CLASSPTH、PATH就不需了。

同時,存在,jdk1.7和jdk1.8。

則java -verison,得到,

   這裡啊,要注意下,是以jdk1.8了,因為,高階版本會覆蓋掉低階版本,當然,我留下它,是因為為我的hadoop-2.6.0版本著想,最近啊,2016年9月3日,hadoop-3.*出來了,以後的趨勢肯定是要以jdk1.8了、

  現在,來安裝

儲存位置,不喜歡安裝到系統盤的話,就選擇到其它的位置

D:\SoftWare\IntelliJ IDEA\IntelliJ IDEA Community Edition 2016.1.4

建立桌面快捷方式,我只選一個64位的夠了;

注意:如果你的JDK是32位的,Tomcat是32位的,估計要使用32位的才行;

建立副檔名關聯:都選上吧 ;

 

安裝到這裡就完成了,但接下來還有一些步驟需要配置

如果你之前安裝過早期版本的,想把之前的配置應用到新版本就選則上面的,沒有?

那就跟我選擇一樣的吧!

 3、IntelliJ IDEA(Community)的使用

在這之前,先在本地裡安裝好java和scala

 

這個必須要同意,不然的話我們安裝它幹嘛!

主題面板設定,看你喜歡哪一種吧!

可以根據你的需要調整定製需要的特性:

這裡可以安裝Scala和IdeaVim支援,但我試了幾次,根本安裝不上;(其實啊,這裡可以安裝的上,當然,有時候會安裝不上)

為IDEA安裝scala,這個過程是是IDEA自動化的外掛管理,所以點選後會自動下載。

說明的是:我們是安裝了scala2.10.4,為什麼還要在IDEA裡還要安裝scala呢?

       而不是IDEAl裡本身開發支援的外掛的版本。

      則,現在已經安裝好了。這一步,叫做,在IntelliJ IDEA裡安裝scala外掛,當然,可以在安裝IntelliJ IDEA就將scala外掛安裝好,或者,也可以在這一步沒安裝成功,之後,再來補安裝scala外掛。

  具體,如何補安裝scala外掛,如下。

啟動介面,挺酷的

先選擇Create New Project 建立一個空專案看看吧

 

 

 補安裝scala外掛

 

自動下載scala外掛了,然後自動安裝後重啟就會生效了!

建立工程

 File  -> New  -> Project 

若是SBT方式,

參考了部落格

http://blog.csdn.net/stark_summer/article/details/42460527

想說的是,SBT是為scala專門而設計的,但是,一般很多人還是用的是maven。

我這裡,選擇Scala方式,來建立,

建立,需要一段時間

即,在以上過程中,模仿JDK1.8.x和scala2.10.4

 

通過File –>  Project  Steuccture 來設定工程的Libraries核心是新增Spark的jar  

 選擇,java,我們這裡匯入spark的jar包,為什麼要選擇java的選項呢?這裡是從jvm的角度考慮的

新增Spark的jar依賴spark-1.5.2-bin-hadoop2.6.tgz裡的lib目錄下的spark-assembly-1.5.2-hadoop2.6.0.jar

注意,我們是在windows裡開發,下載和解壓的是linux版本(如spark-1.6.0-bin-hadoop2.6.tgz)

 

該包可以通過sbt/sbt assembly命令生成,這個命令相當於將spark的所有依賴包和spark原始碼打包為一個整體。

其實,這是一步拷貝的過程

需要一段時間

 

 成功!

src    ->  New   ->  Package

 New    ->    Scala Class

本地模式和叢集模式的程式碼,這裡我不多贅述。

 (1)本地執行

  編寫完Scala程式後,可以直接在IntelliJ IDEA中以本地(local)模式執行。

在IntelliJ IDEA中,點選Run 按鈕,

或者

     有的時候,會是如下情況:

     在IntelliJ IDEA中點選Run/Debug Configuration按鈕,在其下拉列表選擇Edit Configurations選項。

      在Run輸入選擇介面中,在輸入框Program arguments中輸入main函式的輸入引數local,即為本地單機執行spark應用。

       然後點選選擇需要執行的類,點選Run執行spark應用程式。

由此,可見,本地模式成功!

叢集模式

先開啟hadoop叢集

50070介面

 

7070介面

 

 

接下來,繼續打包,使用 Project Structure的Artifacts,

 

Artifacts  ->    +    ->    JAR     +  From modules with dependencies...

接下來,建立Build。

 

[email protected]:/usr/local/spark/spark-1.5.2-bin-hadoop2.6/bin$ ./spark-submit --master spark://SparkSingleNode:7077 /home/spark/WordCount.jar 

開始之前

正在進行

 完成

 

4040介面

其實啊,在叢集裡,模板就是如下

val file = spark.textFile("hdfs://...”)

val counts = file.flatMap("line => line.spilt(" "))

        .map(word => (word,1))

        .reduceByKey(_+_)

 counts.saveAsTextFile("hdfs://...”)

IntelliJ IDEA的黑白色背景切換

File    ->   Setting    ->  Editor     ->   Colors & Fonts   

即,預設是白色的,那麼,點選yes,則預設變成黑色了。

變成

  想說的是,當然,這背景版本給出的是黑色和白色這兩種選擇,其實,自己可以將圖片上傳作為背景。

總結

WordCount.scala(本地模式)
 1 package com.zhouls.spark
 2 
 3 /**
 4   * Created by Administrator on 2016/9/18.
 5   */
 6 
 7 package com.zhouls.spark
 8 
 9 import org.apache.spark.SparkConf
10 import org.apache.spark.SparkContext
11 
12 
13 object WordCount {
14   def main(args: Array[String]): Unit = {
15     /*
16      * 第1步:建立spark的配置物件sparkconf,設定spark程式的執行時的配置資訊,
17      * 例如說通過setMaster來設定程式要連結的spark叢集的master的URL,如果設定為local,則代表spark程式在本地執行,
18      * 特別適合於機器配置條件非常差(例如只有1G記憶體)的初學者
19      */
20     val conf = new SparkConf()//建立SparkConf物件
21     conf.setAppName("Wow,My First Spark App!")//設定應用程式的名稱,在程式執行的監控介面可以看到名稱
22     conf.setMaster("local")//此時,程式在本地執行,不需要安裝spark叢集
23 
24     /*
25      * 第2步:建立SparkContext物件
26      * SparkContext是spark程式所有功能的唯一入口,無論是採用scala、java、pthon、R等都必須有一個SparkContext
27      * SparkContext核心作用:初始化spark應用程式執行所需要的核心元件、包括DAGScheduler、TaskScheduler、SchedulerBackend
28      * 同時還會負責spark程式往master註冊程式等
29      * SparkContext是整個spark應用程式中最為至關重要的一個物件
30      */
31     val sc = new SparkContext(conf)
32 
33     /*
34      * 第3步:根據具體的資料來源(HDFS、HBase、Local FS、DB、S3等)通過SparkContext來建立RDD
35      * RDD的建立基本有三種方式:根據外部的資料來源(如HDFS)、根據Scala集合、由其它的RDD操作資料會被RDD劃分成
36      * 一系列的Partitions,分配到每個Partition的資料屬於一個Task的處理範疇
37      */
38     // val lines:RDD[String] = sc.textFile("D://SoftWare//spark-1.6.2-bin-hadoop2.6//README.md", 1)//path指的是檔案路徑,minPartitions指的是最小並行度
39     val lines = sc.textFile("D://SoftWare//spark-1.6.2-bin-hadoop2.6//README.md", 1)//path指的是檔案路徑,minPartitions指的是最小並行度
40 
41     /*
42      * 第4步:對初始的RDD進行Transformation級別的處理,例如map、filter等高階函式等的程式設計,來進行具體的資料計算
43      *  第4.1步:將每一行的字串拆分成單個的單詞
44      */
45     val words = lines.flatMap{ line => line.split(" ")}//對每一行的字串進行單詞拆分並把所有行的拆分結果通過flat合併成為一個
46 
47     /*
48     * 4.2步:在單詞拆分的基礎上對每個單詞例項計數為1,也就是 word => (word,1)
49     */
50     val pairs = words.map { word => (word,1) }
51 
52     /*
53      * 4.3步:在每個單詞例項計數為1基礎之上統計每個單詞在檔案中出現的總次數
54      */
55     val wordCounts =  pairs.reduceByKey(_+_)//對相同的key,進行value的累計(包括local和reducer級別同時reduce)
56     wordCounts.foreach(wordNumberPair => println(wordNumberPair._1 + ":" + wordNumberPair._2))
57 
58     /*
59      * 第5步
60      */
61     sc.stop();
62   }
63 
64 }
WordCount_Cluster.scala(叢集模式)
 1 package com.zhouls.spark
 2 
 3 /**
 4   * Created by Administrator on 2016/9/18.
 5   */
 6 
 7 import org.apache.spark.SparkConf
 8 import org.apache.spark.SparkContext
 9 
10 
11 object WordCount_Cluster {
12   def main(args: Array[String]): Unit  = {
13     /*
14      * 第1步:建立spark的配置物件sparkconf,設定spark程式的執行時的配置資訊,
15      * 例如說通過setMaster來設定程式要連結的spark叢集的master的URL,如果設定為local,則代表spark程式在本地執行,
16      * 特別適合於機器配置條件非常差(例如只有1G記憶體)的初學者
17      */
18     val conf = new SparkConf()//建立SparkConf物件
19     conf.setAppName("Wow,My First Spark App!")//設定應用程式的名稱,在程式執行的監控介面可以看到名稱
20     conf.setMaster("spark://SparkSingleNode:7077")//此時,程式在本地執行,不需要安裝spark叢集
21 
22     /*
23      * 第2步:建立SparkContext物件
24      * SparkContext是spark程式所有功能的唯一入口,無是採用scala、java、pthon、R等都必須有一個SparkContext
25      * SparkContext核心作用:初始化spark應用程式執行所需要的核心元件、包括DAGScheduler、TaskScheduler、SchedulerBackend
26      * 同時還會負責spark程式往master註冊程式等
27      * SparkContext是整個spark應用程式中最為至關重要的一個物件
28      */
29     val sc = new SparkContext(conf)
30 
31     /*
32      * 第3步:根據具體的資料來源(HDFS、HBase、Local FS、DB、S3等)通過SparkContext來建立RDD
33      * RDD的建立基本有三種方式:根據外部的資料來源(如HDFS)、根據Scala集合、由其它的RDD操作資料會被RDD劃分成
34      * 一系列的Partitions,分配到每個Partition的資料屬於一個Task的處理範疇
35      */
36     // val lines:RDD[String] = sc.textFile("D://SoftWare//spark-1.6.2-bin-hadoop2.6//README.md", 1)//path指的是檔案路徑,minPartitions指的是最小並行度
37     //  val lines = sc.textFile("D://SoftWare//spark-1.6.2-bin-hadoop2.6//README.md", 1)//path指的是檔案路徑,minPartitions指的是最小並行度
38     val lines = sc.textFile("hdfs://SparkSingleNode:9000/README.md", 1)//沒必要會感知上下文
39     //        val lines = sc.textFile("/README.md", 1)//path指的是檔案路徑,minPartitions指的是最小並行度
40     //            val lines = sc.textFile("/README.md")//為什麼,這裡不寫並行度了呢?因為,hdfs會有一個預設的
41     /*
42      * 第4步:對初始的RDD進行Transformation級別的處理,例如map、filter等高階函式等的程式設計,來進行具體的資料計算
43      *  第4.1步:將每一行的字串拆分成單個的單詞
44      */
45     val words = lines.flatMap{ line => line.split(" ")}//對每一行的字串進行單詞拆分並把所有行的拆分結果通過flat合併成為一個
46 
47     /*
48     * 4.2步:在單詞拆分的基礎上對每個單詞例項計數為1,也就是 word => (word,1)
49     */
50     val pairs = words.map { word => (word,1) }
51 
52     /*
53      * 4.3步:在每個單詞例項計數為1基礎之上統計每個單詞在檔案中出現的總次數
54      */
55     val wordCounts =  pairs.reduceByKey(_+_)//對相同的key,進行value的累計(包括local和reducer級別同時reduce)
56     wordCounts.collect.foreach(wordNumberPair => println(wordNumberPair._1 + ":" + wordNumberPair._2))
57 
58     /*
59      * 第5步
60      */
61     sc.stop();
62   }
63 
64 }

擴充套件

歡迎大家,加入我的微信公眾號:大資料躺過的坑        人工智慧躺過的坑

同時,大家可以關注我的個人部落格

   http://www.cnblogs.com/zlslch/   和     http://www.cnblogs.com/lchzls/      http://www.cnblogs.com/sunnyDream/   

   詳情請見:http://www.cnblogs.com/zlslch/p/7473861.html

  人生苦短,我願分享。本公眾號將秉持活到老學到老學習無休止的交流分享開源精神,匯聚於網際網路和個人學習工作的精華乾貨知識,一切來於網際網路,反饋回網際網路。
  目前研究領域:大資料、機器學習、深度學習、人工智慧、資料探勘、資料分析。 語言涉及:Java、Scala、Python、Shell、Linux等 。同時還涉及平常所使用的手機、電腦和網際網路上的使用技巧、問題和實用軟體。 只要你一直關注和呆在群裡,每天必須有收穫

      對應本平臺的討論和答疑QQ群:大資料和人工智慧躺過的坑(總群)(161156071) 

 

相關推薦

IntelliJ IDEA 2018.3.1 的下載安裝破解

  IntelliJ IDEA 是一款功能強大的開發工具,在程式碼自動提示、重構、J2EE支援、各類版本工具(如git、svn、github)、maven等方面都有很好的應用。    下面是 IntelliJ IDEA 2018.3.1 的下載、安裝和破解的過程。      一: 

Mysql5.7及以上版本的MySQL下載安裝及配置教程附圖

打開 water windows 輸入 ont src nbsp iter 電腦 對版本的說明 之所以說是MySQL5.7及以上版本,是因為從MySQL5.7版本之後,其安全機制有所改變。在安裝完成後,登陸MySQL時,需要輸入一個密碼,這個密碼其實是在配置MySQL

Maven學習筆記—— 下載安裝Maven並配置Maven的環境變數

Maven簡介:Maven是一個專案管理工具,主要用於Java平臺的專案構建、依賴管理和專案生命週期管理。1、下載下載完之後解壓到指定的資料夾存放2、配置環境變數第一步:新建系統變數,變數名為MAVEN_HOME,變數值為剛才解壓的檔案路徑第二步:編輯環境變數Path,新增%

詳解mongodbwin7x64下載安裝服務配置與使用

1.去MongoDB官網https://www.mongodb.com/下載所需要的資料庫版本,此處以mongodb-win32-x86_64-2008plus-ssl-3.4.2-signed為例 2.雙擊所下載的安裝程式進行安裝,預設安裝路徑為C:\Program Fi

Intellij IDEA Ultimate Edition 14.1 下載安裝破解

Intellij IDEA 14.1 提供兩個版本,我下載的是旗艦版的 安裝略 安裝完成開啟 分享幾個license: (1) key:IDEA value:61156-YRN2M-5MNCN-NZ8D2-7B4EW-U12L4 (2) ke

IntelliJ IDEACommunity版本下載安裝WordCount初步使用本地模式叢集模式

  不多說,直接上乾貨!   對於初學者來說,建議你先玩玩這個免費的社群版,但是,一段時間,還是去玩專業版吧,這個很簡單哈,學聰明點,去搞到途徑啟用!可以看我的部落格。 包括:    IntelliJ IDEA(Community)的下載    IntelliJ IDEA(Commun

用maven來創建scalajava項目代碼環境圖文詳解Intellij IDEAUltimate版本Intellij IDEACommunity版本Scala IDEA for Eclipse皆適用博主推薦

搭建 ava XML .com 自動 ado ima 強烈 mapred 為什麽要寫這篇博客?   首先,對於spark項目,強烈建議搭建,用Intellij IDEA(Ultimate版本),如果你還有另所愛好嘗試Scala IDEA for Eclipse,有時間自己去

IntelliJ IDEAUltimate版本下載安裝WordCount初步使用本地模式叢集模式

  不多說,直接上乾貨!   IntelliJ IDEA號稱當前Java開發效率最高的IDE工具。IntelliJ IDEA有兩個版本:社群版(Community)和旗艦版(Ultimate)。社群版時免費的、開源的,但功能較少,旗艦版提供了較多的功能,是收費的,可以試用30天。    強烈推

用maven來建立scalajava專案程式碼環境圖文詳解Intellij IDEAUltimate版本Intellij IDEACommunity版本Scala IDEA for Eclipse皆適用博主推薦

  不多說,直接上乾貨! 為什麼要寫這篇部落格?   首先,對於spark專案,強烈建議搭建,用Intellij IDEA(Ultimate版本),如果你還有另所愛好嘗試Scala IDEA for Eclipse,有時間自己去玩玩。但最好追隨大流。   對於hadoop專案,強烈建議用

十三IntelliJ IDEA 中的版本控制介紹

點擊 遠程 analysis 介紹 rem 相關 目錄 IT 默認 我們已經簡單了解了 IntelliJ IDEA 的版本控制機制,那麽接下來,就讓我們一起看看在 IntelliJ IDEA 中進行具體的版本控制操作。 標註1:Checkout from Version

CentOS6.5下如何正確下載安裝Intellij IDEAScalaScala-intellij-bin插件Scala IDE for Eclipse助推大數據開發圖文詳解

scala 建議 strong 安裝jdk rgs 默認 tell launcher eclipse 第二步:安裝Intellij IDEA   若是3節點如,master、slave1、slave2,則建議將其安裝在master節點上   到https:/

MAC IntelliJ IDEA 2018.1版本 安裝+破解方法

一、下載IntelliJ IDEA 2018.1安裝。二、下載包:在Finder應用程式資料夾中右擊IntelliJ IDEA,“顯示包內容”將上面的jar包放到idea包中如下圖位置:用編輯器修改這個檔案在最後一行新增-javaagent:../bin/JetbrainsC

Spark程式設計環境搭建基於Intellij IDEA的Ultimate版本包含JavaScala版的WordCount博主強烈推薦)

  為什麼,我要在這裡提出要用Ultimate版本。 基於Intellij IDEA搭建Spark開發環境搭——參考文件 操作步驟   a)建立maven 專案   b)引入依賴(Spark 依賴、打包外掛等等) 基於Intellij

轉載【項目管理構建】——Maven下載安裝配置

文檔 port 目標 軟件項目管理 strong mar temp mave work 原文鏈接: http://blog.csdn.net/jiuqiyuliang/article/details/41076215 在現實

kettle的下載安裝初步使用windows平臺下圖文詳解

1.0 index java_home 網站 int 目錄 解決辦法 for sql kettle的下載   ?Kettle可以在http://kettle.pentaho.org/網站下載 http:

JDK下載安裝環境變數配置圖解教程

一、JDK下載 http://www.oracle.com/technetwork/java/javase/downloads/index.html 二、JDK安裝 1、JDK安裝 2、JRE安裝 三、JDK環境變

MySQL下載安裝圖解教程

一、 下載圖解(教程) http://dev.mysql.com/downloads/ 1、點選“Downloads”—>“Community”—>“MYSQL on Windows”—>“MySQL Installer” 2、翻到網頁底部,點選“Do

MySQL下載安裝圖解教程 圖形化安裝方式

一、 下載圖解(教程) http://dev.mysql.com/downloads/ 1、點選“Downloads”—>“Community”—>“MYSQL on Windows”—>“MySQL Installer” 2、翻到網頁底部,點選“Do

modelsim-win64-10.4-se 下載安裝破解一次成功

本教程包括軟體下載、破解檔案下載、安裝破解方法,助你一次成功。 軟體安裝好了卻不能用,想必大家都有過這樣的痛苦和無奈。這款軟體的破解花了我整整一個下午的時間,期間在網上找了各種方法嘗試均以失敗告終,差點讓我放棄破解而著手去換作業系統。網上的方法多存在著疏漏和差錯,所以這也是我寫次教程的初衷,希望能幫

IntelliJ IDEA 的 Java 熱部署外掛 JRebel 安裝及使用轉載

jrebel 外掛介紹:http://plugins.jetbrains.com/plugin/4441-jrebel-for-intellij 原文地址:http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/jrebel