Spark 的集群 deploy 模式有三种,分别是 local 模式、standalone 模式和 YARN 模式。

local 模式

local 模式是在一个进程中运行 Spark 应用程序,不需要进行分布式部署。该模式适用于开发和测试阶段,用于验证代码逻辑和功能。在 local 模式下,Spark 应用程序将在单台机器的一个进程中运行,可以使用所有的 CPU 核心和内存资源,但无法进行分布式计算。

standalone 模式

standalone 模式是 Spark 自带的一个资源管理和任务调度集群,可以将 Spark 应用程序部署在一个独立的 Spark 集群中。在这种模式下,集群由一个主节点和多个工作节点组成,主节点负责资源的分配和任务的调度,而工作节点负责执行任务。通过在主节点上启动 Spark Master 进程和在工作节点上启动 Spark Worker 进程,可以配置和管理这个独立的 Spark 集群。

YARN 模式

YARN(Yet Another Resource Negotiator)模式是将 Spark 应用程序与 Hadoop 集成的一种模式,可以将 Spark 应用程序部署在 Hadoop 集群上。在 YARN 模式下,Spark 应用程序作为一个 YARN 应用程序提交给 YARN 资源管理器,由 YARN 来进行资源的分配和任务的调度。在这种模式下,Spark 应用程序可以利用整个 Hadoop 集群的资源进行分布式计算,从而提高计算效率。

总结一下:
1. local 模式是在一个进程中运行 Spark 应用程序,适用于开发和测试阶段。
2. standalone 模式是 Spark 自带的一个资源管理和任务调度集群,适用于独立的 Spark 集群部署。
3. YARN 模式是将 Spark 应用程序与 Hadoop 集成的一种模式,适用于与 Hadoop 集群一起使用。