Spark任务处理流程

最近学习了spark,现根据任务提交分析处理过程总结一下相关的主要模块和任务提交处理流程。一些重要术语client,用户编写的spark任务提交程序master,spark主节点,负责任务和资源调度、节点管理,类似于Yarn的ResourceManagerworker,spark工作节点,可以在上面启动Executor进程,类似于Yarn的NodeManagerdriver,w...
摘要由CSDN通过智能技术生成

最近学习了spark,现根据任务提交分析处理过程总结一下相关的主要模块和任务提交处理流程。

一些重要术语

  1. client,用户编写的spark任务提交程序
  2. master,spark主节点,负责任务和资源调度、节点管理,类似于Yarn的ResourceManager
  3. worker,spark工作节点,可以在上面启动Executor进程,类似于Yarn的NodeManager
  4. driver,worker上的一进程,负责任务内部的分解执行等,类似于Yarn的ApplicationMaster
  5. Application,用户在spark上构建的程序,包含了driver程序以及集群上的executors
  6. Job,包含很多task的并行计算,可以认为是Spark RDD 里面的action,每个action的计算会生成一个job。用户提交的Job会提交给DAGScheduler,Job会被分解成Stage和Task
  7. Stage,每一个 job 包含 n 个 stage,最后一个 stage 产生 result。一个Job会被拆分为多组Task,每组任务被称为一个Stage就像Map Stage, Reduce Stage。
    Stage的划分在RDD的论文中有详细的介绍,简单的说是以shuffle和result这两种类型来划分。在Spark中有两类task,一类是shuffleMapTask,一类是resultTask,第一类task的输出是shuffle所需数据,第二类task的输出是result,stage的划分也以此为依据,shuffle之前的所有变换是一个stage,shuffle之后的操作是另一个stage
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值