Quick Start - Spark 4.0.0 Documentation

Quick Start - Spark 4.0.0 Documentation

Apache Spark is a multi-language engine for executing data engineering, data science, and machine learning on single-node machines or clusters.

访问网站
我的收藏186 次访问更新于 a month ago反馈
Quick Start - Spark 4.0.0 Documentation screenshot

详细介绍

Quick Start - Spark 4.0.0 Documentation 简介

Quick Start 是 Apache Spark 4.0.0 官方文档中的入门教程页面(对应文档版本标记 4.2.0),地址为 https://spark.apache.org/docs/latest/quick-start.html。本教程旨在为使用者提供 Spark 的快速入门指导,首先通过 Spark 的交互式 Shell(Python 或 Scala)介绍其 API,随后演示如何使用 Java、Scala 和 Python 编写独立应用程序。

根据文档说明,在 Spark 2.0 之前,其主要编程接口为弹性分布式数据集(RDD);Spark 2.0 之后,RDD 被 Dataset 取代,Dataset 具有强类型特征且具备更丰富的底层优化。RDD 接口仍受支持,但官方强烈建议改用性能更优的 Dataset。

主要功能

  • 交互式 Shell 分析:提供 Scala 与 Python 版本的 Spark Shell,可用于学习 API 及交互式数据分析。启动方式包括在 Spark 目录下运行 ./bin/pyspark 或环境中用 pip 安装后运行 pyspark
  • Dataset 与 DataFrame 操作
    • 主要抽象为 Dataset,可从 Hadoop InputFormats(如 HDFS 文件)或其他 Dataset 转换而来。
    • Python 中 Dataset 在实现层均为 Dataset[Row],引出 DataFrame(带列名的 Dataset)概念。
    • 支持创建 DataFrame(如读取 README.md 文本)、执行动作(count、first)与转换(filter)以及链式调用。
  • 更复杂的数据集运算:利用 pyspark.sql.functions 进行映射、聚合(如查找含词数最多的行),并轻松实现 MapReduce 式流程(拆分、分组、计数)。
  • 集群缓存:支持将数据集拉入集群范围的内存缓存,适用于反复访问热数据或迭代算法(如 PageRank),可通过 cache() 标记缓存。
  • 独立应用程序编写:指导使用 Scala(sbt)、Java(Maven)、Python(pip)编写自包含应用;Python 示例展示了在 setup.py 中声明 pyspark==4.2.0 依赖,以及用 SparkSession 编写 SimpleApp.py 读取文件并统计包含特定字符行数的基本流程。

适用场景

  • 初次接触 Spark、希望快速了解其 API 与基本数据操作的学习者。
  • 需要使用 Spark Shell 对小规模或集群上的大规模数据进行交互式探索与分析的用户。
  • 计划以 Python、Java 或 Scala 构建基于 Spark 的独立数据处理应用的开发者。
  • 需要利用内存缓存优化重复数据访问或运行迭代计算任务的工程场景。

入门指引

跟随本指南前,需先从 Spark 官网下载已打包的 Spark 发布版;若不使用 HDFS,可下载适配任意 Hadoop 版本的包。完成安装后,即可通过 Shell 或编写应用体验上述功能。更多细节可参阅文档中的 RDD 编程指南与 SQL 编程指南。