如何解析Spark运行模式

这篇文章将为大家详细讲解有关如何解析Spark运行模式,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

Spark运行模式

1  Spark的两个重要角色

1.1 简介

Spark是一种基于内存的快递、通用、可扩展的大数据分析引擎。

1.2 spark内置模块:

如何解析Spark运行模式

1.3 Spark的两个重要角色:

Driver(驱动器)负责管理调度任务

Executor(执行器):负责执行具体的任务

如何解析Spark运行模式

2 Spark运行模式
  • Local模式:运行在一台机器上,通常是练手或者测试环境。

  • Standalone:构建一个基于 Mster+Slaves 的资源调度集群,Spark 任务提交给 Master运行。Spark 自身的一个调度系统,不依赖Yarn等其他框架

  • Yarn: Spark 客户端直接连接 Yarn,不需要额外构建 Spark 集群。有 yarn-client 和yarn-cluster 两种模式,主要区别在于:Driver 程序的运行节点

    • yarn-client:Driver程序运行在客户端,适用于交互、调试,希望立即看到app的输出。

    • yarn-cluster:Driver程序运行在由RM(ResourceManager)启动的AP(APPMaster)适用于生产环境。

  • Mesos:国内大环境比较少用。

几种模式的对比:

如何解析Spark运行模式

3 Local模式(下的WordCount)

3.1 Spark-Wordcount基本思路

如何解析Spark运行模式                如何解析Spark运行模式

文件加载load:加载文件

扁平化:将句子分割成一个一个的单词;

分组:将相同的单词放到一个组里面;

聚合:统计每个组里成员的数量;

(上述过程是左图的简化过程,不太准确,按照下面的步骤来记忆;右图才是准确的过程)

3.2 Wordcount代码实现

如何解析Spark运行模式

相关方法说明:

TextFile:用于加载文件;

FlatMap:用于扁平化处理,单词切分;

Map:将每一个单词映射为元祖;

ReduceByKey:按照key进行分组聚合;

如何解析Spark运行模式

3.3 Wordcount过程图示

如何解析Spark运行模式

4 Yarn模式(重点)

4.1 概述

Spark客户端直接连接Yarn,不需要额外构建Spark集群。有yarn-client和yarn-cluster两种模式,主要区别在于:Driver程序的运行节点。

yarn-client:Driver程序运行在客户端,适用于交互、调试,希望立即看到app的输出

yarn-cluster:Driver程序运行在由RM(ResourceManager)启动的AP(APPMaster)适用于生产环境。

4.2 Yarn运行模式(重点)

要清晰知道每一步的过程。

如何解析Spark运行模式                如何解析Spark运行模式

两张图结合起来一起看

5 Standalone模式(独立部署模式)

就是只用spark自己的东西,不用Yarn等其他的框架。

5.1 概述

构建一个由Master+Slave构成的Spark集群,Spark运行在集群中。

5.2 Standalone模式

如何解析Spark运行模式

Master相当于Yarn中的RM;

Worker相当于Yarn中的NM;

关于如何解析Spark运行模式就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/223275.html

(0)
上一篇 2022年1月6日
下一篇 2022年1月6日

相关推荐

发表回复

登录后才能评论