Spark与flink计算引擎工作原理

spark的driver驱动程序,运行在提交任务的客户端上,和集群通信成本比较高
因为driver的在客户端,所以driver中的程序结果输出可以在客户端控制台看到

ApplicationMaster介绍
Hadoop用户向YARN集群提交应用程序时,提交程序中包含ApplicationMaster,用于向资源调度器申请执行任务的资源容器Container,运行用户自己的程序任务job,监控整个任务的执行,跟踪整个任务的状态,处理任务失败等异常情况。ResourceManager(资源)和Driver(计算)之间的解耦合靠的就是ApplicationMaster。
在这里插入图片描述
cluster模式:spark的driver驱动程序,运行在Yarn集群上,和集群通信成本比较低
driver是提交给yarn管理的,如果失败会由Yarn重启,driver中的程序输出需要在Yarn日志查看

在这里插入图片描述

spark常用术语:
在这里插入图片描述

Application:是指用户编写的Spark应用程序,其中包括一个Driver功能的代码和分布在集群中多个节点上运行的Executor代码

Driver:Spark中的Driver是运行上述Application的main函数,运行main函数会创建SparkContext,创建SparkContext的目的是为了准备Spark应用程序的运行环境,在Spark中SparkContext负责与ClusterManager通信,进行资源申请、任务的分配和监控等,当Executor部分运行完毕后,Driver同时负责将SparkContext关闭,通常用SparkContext代表Driver

ClusterManager集群管理器,对于YARN模式就是resourceManager/ApplicationMaster,在集群上做统一资源管理

Worker:工作节点,是拥有CPU/内存等资源的机器,集群中任何可以运行Application代码的节点,在Standalone模式中指的是通过slave文件配置的Worker节点,在Spark on Yarn模式下就是NoteManager节点

Executor:Application运行在worker节点上的一个进程,该进程负责运行某些Task, 并且负责将数据存到内存或磁盘上,每个Application都有各自独立的一批Executor, 在Spark on Yarn模式下,其进程名称为CoarseGrainedExecutor Backend。一个CoarseGrainedExecutor Backend有且仅有一个Executor对象, 负责将Task包装成taskRunner,并从线程池中抽取一个空闲线程运行Task, 这个每一个oarseGrainedExecutor Backend能并行运行Task的数量取决与分配给它的cpu个数

Task:被送到某个Executor上的工作单元,hadoopMR中的MapTask和ReduceTask概念一样,是运行Application的基本单位,多个Task组成一个Stage,而Task的调度和管理等是由TaskScheduler负责

Job:包含多个Task组成的并行计算,往往由Spark Action触发生成, 一个Application中往往会产生多个Job

Stage:每个Job会被拆分成多组Task, 作为一个TaskSet, 其名称为Stage,Stage的划分和调度是有DAGScheduler来负责的,Stage有非最终的Stage(Shuffle Map Stage)和最终的Stage(Result Stage)两种,Stage的边界就是发生shuffle的地方

DAG:

flink架构

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618545628)**

  • 24
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值