IDEA 搭建 Spark 项目

搭建前的准备

搭建 Scala 环境

首先需要你的IDEA 需要搭建好 Scala 的环境(可以参考这篇

还需要一个和 Hadoop的 Windows版二进制文件

下载地址:http://public-repo-1.hortonworks.com/hdp-win-alpha/winutils.exe

搭建

配置 winutils

创建一个目录 E:\winutils\binwinutils.exe 放进去

mark

配置环境变量

// 新建变量
变量名:HADOOP_HOME  
变量值:E:\winutils

// 把新建变量加入 Path 
%HADOOP%\bin

这样就安装好了

mark

配置 IDEA

在 IDEA 配置好 Scala 后,就只需要在 pom.xml 文件里添加 Spark 依赖就好

pom.xml 文件

<?xml version="1.0" encoding="UTF-8"?>
<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>cn.bigdataboy</groupId>
    <artifactId>SparkDemo</artifactId>
    <version>1.0</version>
    <dependencies>
        <!--Spark 依赖-->
        <!-- https://mvnrepository.com/artifact/org.apache.spark/spark-core -->
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_2.11</artifactId>
            <version>2.0.0</version>
        </dependency>

    </dependencies>

</project>

等待依赖下载完成
mark

Spark 案例

第一个 Spark 案例,单词统计

统计数据

hello Scala
hello Java
hello Python

统计代码

def main(args: Array[String]): Unit = {
    // 设定 Spark 运行环境
    val conf: SparkConf = new SparkConf().setMaster("local[*]").setAppName("wc")

    // 创建 Spark 上下文连接对象
    val sc = new SparkContext(conf)
    // 读取文件,一行数据为一个元素
    val lines:  RDD[String] = sc.textFile("./src/main/Scala/data.txt")
    // 空格分隔,使其扁平化
    val words: RDD[String] = lines.flatMap(_.split(" "))
    // 格式化数据,方便统计
    val wordToOne: RDD[(String, Int)] = words.map((_, 1))
    // 聚合
    val wordToSum: RDD[(String, Int)] = wordToOne.reduceByKey(_ + _)
    // 收集并打印结果
    println(wordToSum.collect().mkString(","))
    // 保存结果
    wordToSum.saveAsTextFile("./src/main/Scala/out")
}

mark

发表评论 / Comment

用心评论~