Spark术语与宽窄依赖

本文详细介绍了 Apache Spark 的核心组件及其工作原理,包括 Master、WorkerNode 和 Executor 的角色定位,以及 Application、Job、Stage 和 Task 在任务调度中的作用。同时解析了窄依赖和宽依赖的区别及对数据处理的影响。
摘要由CSDN通过智能技术生成

1. 术语解释

Master(standalone):资源管理的主节点(进程)
ClusterManager:在集群上获取资源的外部服务(如standalone,mesos,yarn)
WorlerNode:资源管理的从节点(进程),或者说管理本机资源的进程
Application:基于spark的用户程序,包含了driver程序和运行在集群上的executor程序
Driver program:用来连接工作进程(worker)的程序
Executor:是在一个worker进程所管理的节点上为某Application启动的进程,该进程负责运行任务,并且负责将数据存在内存或磁盘上,每个应用都有各自独立的executor
Task:被送到某个executor上的工作单元
Job:包含很多任务(Task)的并行计算,可以看做和action对应
Stage:一个Job会被拆分为很多组任务,每组任务被称为Stage,就像MapReduce分为map task和reduce task一样

2. 窄依赖和宽依赖

RDD 之间有一系列的依赖关系,依赖关系又分为窄依赖和宽依赖。
窄依赖
父 RDD 和子 RDD partition 之间的关系是一对一的。或者父 RDD 一个 partition 只对应一个子 RDD 的 partition 情况下的父 RDD 和子 RDD partition 关系是多对一的。不会有 shuffle 的产生。
宽依赖
父 RDD 与子 RDD partition 之间的关系是一对多。会有 shuffle 的产生。

资源层面
Master->worker->Executor->ThreadPool
任务层面
Application->Job->Stage->task

task->ThreadPool

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值