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 小时前
大数据-99 Spark Streaming 数据源全面总结:原理、应用 文件流、Socket、RDD队列流
大数据·后端·spark
小溪彼岸21 小时前
macOS自带截图命令ScreenCapture
macos
计算机毕业设计木哥1 天前
计算机毕设选题推荐:基于Java+SpringBoot物品租赁管理系统【源码+文档+调试】
java·vue.js·spring boot·mysql·spark·毕业设计·课程设计
TESmart碲视1 天前
Mac 真正多显示器支持:TESmart USB-C KVM(搭载 DisplayLink 技术)如何实现
macos·计算机外设·电脑
IT毕设梦工厂1 天前
大数据毕业设计选题推荐-基于大数据的客户购物订单数据分析与可视化系统-Hadoop-Spark-数据可视化-BigData
大数据·hadoop·数据分析·spark·毕业设计·源码·bigdata
大数据CLUB2 天前
基于spark的澳洲光伏发电站选址预测
大数据·hadoop·分布式·数据分析·spark·数据开发
Hungry_Shark2 天前
IDEA版本控制管理之使用Gitee
java·gitee·intellij-idea
赛姐在努力.2 天前
《IDEA 突然“三无”?三秒找回消失的绿色启动键、主菜单和项目树!》
java·intellij-idea
计算机编程小央姐2 天前
跟上大数据时代步伐:食物营养数据可视化分析系统技术前沿解析
大数据·hadoop·信息可视化·spark·django·课程设计·食物
2501_915106322 天前
Xcode 上传 ipa 全流程详解 App Store 上架流程、uni-app 生成 ipa 文件上传与审核指南
android·macos·ios·小程序·uni-app·iphone·xcode