最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何使用 IntelliJ IDEA 編寫 Spark 應用程序(Scala + Maven)

 更新時間:2024年11月20日 10:00:44   作者:那一抹陽光多燦爛  
本教程展示了如何在IntelliJIDEA中使用Maven編寫和運行一個簡單的Spark應用程序(例如WordCount程序),本文通過實例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧

使用 IntelliJ IDEA 編寫 Spark 應用程序(Scala + Maven)

本教程演示如何使用 IntelliJ IDEA 和 Maven 編寫 Spark 應用程序(以 WordCount 程序為例)。運行環(huán)境為 Ubuntu 16.04。

環(huán)境準備

安裝 IntelliJ IDEA
(1)從 IntelliJ IDEA 官網(wǎng) 下載安裝包。
(2)解壓安裝包并重命名:

cd ~/下載
sudo tar -zxvf ideaIU-2016.3.4.tar.gz
sudo mv idea-IU-163.12024.16 /usr/local/Intellij

(3)運行 IDEA:

cd /usr/local/Intellij/bin
./idea.sh

(4)選擇 Evaluate for free 使用試用版。
(5)為快捷啟動創(chuàng)建桌面圖標:

cd /usr/share/applications
sudo gedit idea.desktop

在文件中添加以下內(nèi)容:

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Name=IntelliJ IDEA
GenericName=Java IDE
Comment=IntelliJ IDEA is a code-centric IDE focused on developer productivity.
Exec=/usr/local/Intellij/bin/idea.sh
Icon=/usr/local/Intellij/bin/idea.png
Terminal=false
Type=Application
Categories=Development;IDE

(6)重啟系統(tǒng)后,可在啟動欄中搜索 IntelliJ IDEA。

配置 IntelliJ IDEA
安裝 Scala 插件
(1)打開 IDEA,依次選擇 File -> Settings -> Plugins。
(2)點擊 Install JetBrains Plugin,搜索并安裝 Scala 插件。
配置 JDK 和 Scala SDK
(1)打開 File -> Project Structure。
配置 JDK:
(2)點擊左側(cè) SDKs,添加系統(tǒng)安裝的 JDK(假設已安裝并配置 Java 環(huán)境)。
(3)配置 Scala SDK:
添加已安裝的 Scala,并選擇 Copy to Project Libraries。

創(chuàng)建 Maven 工程文件
新建工程
在 IDEA 主界面選擇 Create New Project。
選擇 Maven,點擊下一步。
填寫 GroupId 和 ArtifactId,例如:
GroupId: dblab
ArtifactId: WordCount
配置項目路徑,點擊 Finish。

配置工程
添加 Scala 框架
右鍵工程名稱,選擇 Add Framework Support。
勾選 Scala,點擊 OK。
設置 Sources Root
在 src 文件夾下創(chuàng)建名為 WordCount 的子文件夾。
右鍵該文件夾,選擇 Mark Directory as -> Sources Root。

編寫代碼
創(chuàng)建 Scala 文件
(1)在 WordCount 文件夾中右鍵,選擇 New -> Scala Class,創(chuàng)建名為 WordCount 的 object 類型文件。
(2)粘貼以下代碼

import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark.SparkConf
object WordCount {
  def main(args: Array[String]) {
    val inputFile = "file:///usr/local/spark/mycode/wordcount/word.txt"
    val conf = new SparkConf().setAppName("WordCount").setMaster("local")
    val sc = new SparkContext(conf)
    val textFile = sc.textFile(inputFile)
    val wordCount = textFile.flatMap(line => line.split(" "))
      .map(word => (word, 1))
      .reduceByKey((a, b) => a + b)
    wordCount.foreach(println)
  }
}

配置 pom.xml
(1)清空 pom.xml 內(nèi)容,粘貼以下代碼:

<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>dblab</groupId>
    <artifactId>WordCount</artifactId>
    <version>1.0-SNAPSHOT</version>
    <properties>
        <spark.version>2.1.0</spark.version>
        <scala.version>2.11</scala.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_${scala.version}</artifactId>
            <version>${spark.version}</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.scala-tools</groupId>
                <artifactId>maven-scala-plugin</artifactId>
                <version>2.15.2</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>compile</goal>
                            <goal>testCompile</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.6.0</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

(2)右鍵項目名稱,選擇 Maven -> Reload Project。

運行程序
運行 WordCount
(1)打開 WordCount.scala 文件,在代碼窗口內(nèi)右鍵選擇 Run ‘WordCount’。

(2)確保輸入文件路徑 /usr/local/spark/mycode/wordcount/word.txt 存在,文件內(nèi)容示例:

hello world
hello Hadoop

(3)查看終端輸出,結(jié)果類似:

(hello, 2)
(world, 1)
(Hadoop, 1)

打包為 Jar 文件
導出 Jar 包

(1)打開 File -> Project Structure。

(2)選擇 Artifacts -> + -> Jar -> From modules with dependencies。

(3)選擇 Main Class 為 WordCount。

(4)刪除不必要的文件,只保留 WordCount.jar 和 ‘WordCount’ compile output。

(5)點擊 Apply 和 OK。

(6)導出 Jar 文件:

Build -> Build Artifacts -> Build。導出的 Jar 包存儲在out/artifacts/WordCount_jar/WordCount.jar。 提交到 Spark 集群運行
(1)將 Jar 包復制到指定路徑:

cp /path/to/WordCount.jar /home/hadoop

(2)使用 Spark 提交程序:

/usr/local/spark/bin/spark-submit --class WordCount /home/hadoop/WordCount.jar

(3)查看終端輸出,驗證結(jié)果。
通過以上步驟,你已經(jīng)完成了使用 IntelliJ IDEA 和 Maven 編寫、運行及打包一個簡單的 Spark 應用程序!

到此這篇關(guān)于使用 IntelliJ IDEA 編寫 Spark 應用程序(Scala + Maven)的文章就介紹到這了,更多相關(guān)IDEA 編寫 Spark 應用程序內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringBoot整合MyBatisPlus詳解

    SpringBoot整合MyBatisPlus詳解

    這篇文章詳細介紹了SpringBoot整合mybatisplus的全過程,文中有詳細的代碼示例,具有一定的參考價值,需要的朋友可以參考一下
    2023-04-04
  • Spring中@PathVariable注解的簡單使用

    Spring中@PathVariable注解的簡單使用

    這篇文章主要介紹了Spring中@PathVariable注解的簡單使用,@PathVariable 是 Spring Framework 中的注解之一,用于處理 RESTful Web 服務中的 URL 路徑參數(shù),它的作用是將 URL 中的路徑變量綁定到方法的參數(shù)上,需要的朋友可以參考下
    2024-01-01
  • SpringBoot將Bean放入容器的五種方式

    SpringBoot將Bean放入容器的五種方式

    這篇文章給大家介紹了SpringBoot將Bean放入容器的五種方式,文中通過代碼示例給大家介紹的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下
    2024-02-02
  • Spring Boot支持HTTPS步驟詳解

    Spring Boot支持HTTPS步驟詳解

    這篇文章主要介紹了Spring Boot支持HTTPS步驟詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • 構(gòu)建springboot自動生成mapper文件和dao接口項目的步驟和配置方法

    構(gòu)建springboot自動生成mapper文件和dao接口項目的步驟和配置方法

    這篇文章主要介紹了構(gòu)建springboot自動生成mapper文件和dao接口項目的步驟和配置方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-05-05
  • mybatisX插件的使用及打包成配置

    mybatisX插件的使用及打包成配置

    本文主要介紹了mybatisX插件的使用及打包成配置,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-05-05
  • Spring Boot實戰(zhàn)教程之自動配置詳解

    Spring Boot實戰(zhàn)教程之自動配置詳解

    Spring Boot的自動配置給開發(fā)者帶來了很大的便利,當開發(fā)人員在pom文件中添加starter依賴后,maven或者gradle會自動下載很多jar包到classpath中。下面這篇文章主要給大家介紹了關(guān)于Spring Boot自動配置的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-07-07
  • 解決SpringBoot請求返回字符串中文亂碼的問題

    解決SpringBoot請求返回字符串中文亂碼的問題

    這篇文章主要介紹了解決SpringBoot請求返回字符串中文亂碼的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Java無法獲取真實IP解決方案

    Java無法獲取真實IP解決方案

    這篇文章主要介紹了Java無法獲取真實IP解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-12-12
  • Java gRPC攔截器簡單實現(xiàn)分布式日志鏈路追蹤器過程詳解

    Java gRPC攔截器簡單實現(xiàn)分布式日志鏈路追蹤器過程詳解

    有請求的發(fā)送、處理,當然就會有攔截器的需求,例如在服務端通過攔截器統(tǒng)一進行請求認證等操作,這些就需要攔截器來完成,今天松哥先和小伙伴們來聊一聊gRPC中攔截器的基本用法,后面我再整一篇文章和小伙伴們做一個基于攔截器實現(xiàn)的JWT認證的gRPC
    2023-03-03

最新評論

聊城市| 木里| 安国市| 凤城市| 泰兴市| 大理市| 嘉荫县| 玛沁县| 张家界市| 铁力市| 东平县| 南召县| 武汉市| 祥云县| 城口县| 黔江区| 信宜市| 安远县| 宁海县| 株洲市| 阳谷县| 耒阳市| 新兴县| 五大连池市| 宜兰市| 南投市| 雷波县| 颍上县| 黑山县| 绿春县| 江阴市| 双柏县| 五原县| 武宣县| 东乌| 井冈山市| 呼玛县| 黔东| 鹰潭市| 衡南县| 南投市|