用idea编写并运行第一个spark scala处理程序

1、用idea创建工程,类别为:Scala,选IDEA类型,下一步选择JDK 1.8和Scala SDK:scala-sdk-2.12.20(scala安装位置)。

2、点右键,添加框架支持(Add Framework Support),选择Maven支持。

3、pom.xml的内容:

bash 复制代码
<?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>groupId</groupId>
    <artifactId>scala01</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
    <dependencies>
        <dependency>
            <groupId>net.alchim31.maven</groupId>
            <artifactId>scala-maven-plugin</artifactId>
            <version>3.2.2</version>
        </dependency>
        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
            <version>2.12.20</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_2.12</artifactId>
            <version>3.5.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-common-utils_2.13</artifactId>
            <version>3.5.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-network-common_2.13</artifactId>
            <version>3.5.2</version>
        </dependency>

    </dependencies>
</project>

刷新maven工程。

4、创建包:com.rainpet

包下新建Scala文件Hello.scala,内容如下:

bash 复制代码
package com.rainpet

import org.apache.spark.{SparkConf, SparkContext}

object Hello {
  def main(args: Array[String]): Unit = {
    val conf = new SparkConf().setAppName("educoder").setMaster("local")
    val sc = new SparkContext(conf)
    //var file1=sc: SparkContext.textFile("hdfs://master:9000/user/input/1.txt")
    //ci'pin'tong'ji
    var file1 = sc.textFile("hdfs://master:8020/user/input/1.txt")
    var wordCounts = file1.flatMap(line => line.split(" ")).map(word => (word, 1)).reduceByKey(_ + _)
    wordCounts.collect().foreach(println)
  }

}

5、点运行或调试,即可以正常运行了。

相关推荐
摇滚侠9 小时前
JavaWeb 全套教程 Servlet 66-74
java·servlet·tomcat·intellij-idea·jar
我登哥MVP10 小时前
Spring Boot 从“会用”到“精通”:参数解析原理
java·spring boot·后端·spring·servlet·maven·intellij-idea
摇滚侠14 小时前
IDEA 创建 Java 项目 推送到远程 Git 仓库
java·git·intellij-idea
KaMeidebaby15 小时前
卡梅德生物技术快报|蛋白定制:ACE 抑制肽原辅料工艺全参数|适配蛋白定制的提取 & 酶解标准化实操手册
大数据·人工智能·架构·spark·新浪微博
摇滚侠16 小时前
git ignore 忽略 .idea 目录 全新项目(尚未提交过 .idea).idea 已经被 Git 跟踪(已提交过)
java·git·intellij-idea
闪电悠米1 天前
黑马点评-秒杀优化-01_async_seckill_idea
java·数据库·ide·redis·分布式·缓存·intellij-idea
摇滚侠1 天前
IDEA 创建 Java 项目 lib 和 resources
java·ide·intellij-idea
我登哥MVP1 天前
Spring Boot 从“会用”到“精通”:请求映射原理
java·spring boot·后端·spring·servlet·maven·intellij-idea
醉颜凉2 天前
Scala自定义Monad实战:从理论到应用的完整指南
大数据·算法·scala