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 的日志输出以及程序的运行结果。

运行结果如下:

相关推荐
talen_hx2963 分钟前
《零基础入门Spark》学习笔记 Day 04
大数据·笔记·学习·spark
15Moonlight23 分钟前
Java基础篇
java·intellij-idea
D愿你归来仍是少年25 分钟前
Apache Spark 详细讲解第 7 章:Shuffle 机制深度解析
大数据·spark·apache
独隅34 分钟前
MacOS 上部署 PyTorch 模型的详细步骤
人工智能·pytorch·macos
卓怡学长11 小时前
m289在线交友系统
java·spring·tomcat·maven·intellij-idea·hibernate
@大迁世界16 小时前
M6 Pro 的特性将彻底改变我们对 macOS 的认知
macos
Code知行合壹20 小时前
Spark使用总结
大数据·分布式·spark
zhojiew21 小时前
[INFRA] EMR集群中Hive和Spark集成Glue Data Catalog过程的深入分析
hive·hadoop·spark·aws·bigdata
w1225h21 小时前
IDEA搭建SpringBoot,MyBatis,Mysql工程项目
spring boot·intellij-idea·mybatis
superantwmhsxx21 小时前
[golang][MAC]Go环境搭建+VsCode配置
vscode·macos·golang