MAC M3电脑在idea上搭建Spark环境并跑通第一个程序

我的电脑是Macbook Pro,最近在学习Spark,想要在idea里搭建Spark环境,为之后的Spark编程作准备。下面是在MAC版本的idea里配置Spark环境。

1. 准备工作

1.安装 JDK

确保Mac 上已经安装了 JDK 8 或更高版本。

可通过 java -version 查看是否安装。

复制代码
java -version

输出以下内容,说明安装成功

JDK8的安装步骤可参考教程:JDK8安装教程

2.安装 Apache Spark

  • 下载 Spark 二进制包:Spark-3.3.1

  • 解压缩到目标目录,例如 /opt/spark

  • 配置环境变量:

    export SPARK_HOME=/opt/spark
    export PATH=SPARK_HOME/bin:PATH

  • 验证 Spark 是否安装成功:

    spark-shell

出现以下界面,说明spark安装成功

3.安装 Maven(如果未安装)

  • 安装命令:

    brew install maven

  • 验证:

    mvn -v

出现以下说明安装成功

2. 配置 IntelliJ IDEA

1.打开IDEA

2.安装 Scala 插件

  • 打开 IDEA -> Preferences -> Plugins -> Marketplace -> 搜索 Scala 并安装插件。

3.创建新项目

  • 选择New Project
  • 选择Maven Archetype
  • 配置JDK,选择已安装的JDK8
  • 填写项目名称和目录,点击Finish
  • GroupId:你的组织或项目名称,例如 com.example。
  • ArtifactId:项目的名称,例如 spark-app。
  • Version:默认即可(例如 1.0-SNAPSHOT)。

4.配置 Spark 依赖

1.打开项目中的 pom.xml 文件,添加 Spark 相关依赖:

复制代码
<dependencies>
    <!-- Spark Core -->
    <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-core_2.12</artifactId>
        <version>3.4.1</version>
    </dependency>
    <!-- Spark SQL -->
    <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-sql_2.12</artifactId>
        <version>3.4.1</version>
    </dependency>
</dependencies>

2.点击 IDEA 中的 Maven 面板,点击刷新按钮(右上角的箭头),下载依赖。

4.编写 Spark 程序

1.在 src/main/javasrc/main/scala 中创建你的程序文件。例如创建一个 WordCountApp.java

2.编写 Spark 应用程序:

复制代码
import org.apache.spark.api.java.function.FlatMapFunction;
import org.apache.spark.sql.*;

import java.util.Arrays;

public class WordCountApp {
    public static void main(String[] args) {
        SparkSession spark = SparkSession.builder()
                .appName("WordCountApp")
                .master("local[*]")  //本地运行模式
                .getOrCreate();

        Dataset<Row> data = spark.read().text("input.txt");
        Dataset<Row> wordCounts = data
                .flatMap((FlatMapFunction<Row,String>)row -> Arrays.asList(row.getString(0).split(" ")).iterator(), Encoders.STRING())
                .groupBy("value")
                .count();

        wordCounts.show();

        spark.stop();
    }
}

input.txt的内容如下:

复制代码
hello world
hello spark
hello world from java
spark is fun and easy to use
apache spark is a fast and general engine for large-scale data processing
data processing with spark is both fast and simple
spark can be used for streaming batch processing machine learning and graph processing
hello apache spark

5.运行和调试

1.在 IDEA 中,右键点击 WordCountApp 文件,选择 Run 'WordCountApp'。

2.如果运行成功,你会看到 Spark 的日志输出以及程序的运行结果。

运行结果如下:

相关推荐
好奇的菜鸟3 小时前
如何在IntelliJ IDEA中设置数据库连接全局共享
java·数据库·intellij-idea
荔枝吻6 小时前
【沉浸式解决问题】idea开发中mapper类中突然找不到对应实体类
java·intellij-idea·mybatis
涤生大数据8 小时前
Apache Spark 4.0:将大数据分析提升到新的水平
数据分析·spark·apache·数据开发
xufwind12 小时前
spark standlone 集群离线安装
大数据·分布式·spark
a_Dragon112 小时前
Spring Boot多环境开发-Profiles
java·spring boot·后端·intellij-idea
瓜子三百克13 小时前
CALayer的异步处理
macos·ios·cocoa
Fine姐13 小时前
传感器WSNs TheDataLinkLayer——B-MAC
macos
九丝城主13 小时前
2025使用VM虚拟机安装配置Macos苹果系统下Flutter开发环境保姆级教程--中篇
服务器·flutter·macos·vmware
呆萌的代Ma15 小时前
解决Mac上的老版本docker desktop 无法启动/启动后一直转圈/无法登陆账号的问题
macos·docker·eureka
大数据CLUB15 小时前
基于spark的奥运会奖牌变化数据分析
大数据·hadoop·数据分析·spark