Spark2.0

目录

[10.3 Spark运行架构](#10.3 Spark运行架构)

[10.3.1 基本概念](#10.3.1 基本概念)

[10.3.2 架构设计](#10.3.2 架构设计)

​编辑

[10.3.3 Spark运行基本流程](#10.3.3 Spark运行基本流程)

Spark运行架构特点


10.3Spark运行架构

10.3.1 基本概念

RDD :是 Resillient Distributed Dataset (弹性分布式数据集)的简称,是分布式内存的一个抽象概念, 提供了一种高度受限的共享内存模型
DAG :是 Directed Acyclic Graph (有向无环图)的简称,反映 RDD 之间的依赖关系
Executor :是运行在工作节点( WorkerNode )的一个进程,负责运行 Task

Application :用户编写的 Spark 应用程序
Task :运行在 Executor 上的工作单元
Job :一个 Job 包含多个 RDD 及作用于相应 RDD 上的各种操作
Stage :是 Job 的基本调度单位,一个 Job 会分为多组 Task ,每组 Task 被称为 Stage ,或者也被称为 TaskSet ,代表了一组关联的、相互之间没有 Shuffle 依赖关系的任务组成的任务 集

10.3.2 架构设计

Spark 运行架构包括集群资源管理器( Cluster Manager )、运行作业任务的工作 节点 ( Worker Node )、每个应用的任务控制 节点 ( Driver )和每个工作节点上负责具体任务的执行进程( Executor ) 。其中,集群管理器 可以自带 或 使用 Mesos 、 YARN 等资源管理框架。

与Hadoop MapReduce计算框架相比,Spark所采用的Executor有两个优点:
Ø 一是利用多线程来执行具体的任务,减少任务的启动 开销。
Ø 二是 Executor 中有一个 BlockManager 存储模块,会将内存和磁盘共同作为存储设备,有效减少 IO 开销。
一个 Application 由一个 Driver 和若干个 Job 构成,一个 Job 由多个 Stage 构成,一个 Stage 由多个没有 Shuffle 关系的 Task 组成 。
当执行一个 Application 时, Driver 会向集群管理器申请资源,启动 Executor ,并向 Executor 发送应用程序代码和文件,然后在 Executor 上执行 Task ,运行结束后,执行结果会返回给 Driver , 或者写到 HDFS 或者其他数据库 中 。

10.3.3 Spark运行基本流程

(1)首先为应用构建起基本的运行环境,即由Driver创建一个SparkContext,进行资源的申请、任务的分配和监控

(2)资源管理器为Executor分配资源,并启动Executor进程

(3)SparkContext根据RDD的依赖关系构建DAG图,DAG图提交给DAGScheduler解析成Stage,然后把一个个TaskSet提交给底层调度器TaskScheduler处理;Executor向SparkContext申请Task,Task Scheduler将Task发放给Executor运行,并提供应用程序代码。

(4)Task在Executor上运行,把执行结果反馈给TaskScheduler,然后反馈给DAGScheduler,运行完毕后写入数据并释放所有资源

Spark运行架构特点

总体而言,Spark运行架构具有以下特点:

(1)每个Application都有自己专属的Executor进程,并且该进程在Application运行期间一直驻留。Executor进程以多线程的方式运行Task

(2)Spark运行过程与资源管理器无关,只要能够获取Executor进程并保持通信即可

(3)Task采用了数据本地性和推测执行等优化机制
数据本地 性,指的是尽量计算移动到数据所在的节点,即"计算向数据靠拢",因为移动计算比移动数据比所占的网络资源要少的多。
Spark 还采用了延时调度机制,可以在更大程度上实现执行过程优化。比如数据节点当前正被其他的任务占用,那么在这种情况下是否需要将数据移动到其他的空闲节点上?不一定。

相关推荐
海外数字观察家几秒前
马来西亚商贸数字化落地指南:跨境批发、连锁零售首选ERP方案(品未云)
大数据·人工智能·马来西亚进销存系统·马来西亚收银系统·马来西亚erp系统·马来西亚仓库管理系统
珠海西格电力几秒前
数据采集与治理:零碳园区管理系统的 “生命线”
大数据·人工智能·算法·架构·能源
智慧景区与市集主理人2 小时前
巨有科技智慧康养|避开康养文旅内卷,做能变现的疗愈数字化
大数据·人工智能·科技
峥嵘life3 小时前
Repo 常用操作手册
大数据·elasticsearch·搜索引擎
ZeekerLin3 小时前
AI 原生开发落地路线图:从个人提效到团队体系化
大数据·人工智能
ljs6482739514 小时前
Hadoop集群部署常见问题
大数据·hadoop·分布式
科技圈快迅4 小时前
解决续费痛点,轻量化AI订阅替代方案深度解读
大数据·人工智能
山峰哥4 小时前
‌Explain实战:打开数据库执行计划的黑盒‌
大数据·服务器·数据库·sql·深度优先·宽度优先
A hao4 小时前
HDR LED显示屏工作原理:高动态范围显示技术解析
大数据·图像处理·人工智能
回眸&啤酒鸭4 小时前
【回眸】搞钱灵感——AI 数字人口播博主自动化运营
大数据·人工智能·自动化