Spark运行架构

  • driver和executor概念

1. 作为两大核心组件,driver是驱动器节点,执行spark的main方法,既启动程序。另外在过程中还能在executor之间调度任务task,跟踪executor的执行情况,在ui页面查看运行情况。

2. executor简单来说就是1)执行任务,并将任务结果返回给driver,2)可以通过自身块block manager为用户程序要求缓存的RDD提供内存存储,RDD是直接缓存在executor进程内的,这样提高运算效率。

细化来说就是集群中工作节点worker的JVM进程,运行task(注,任务是相互独立的),生命周期是spark启动而启动,结束而结束。

3. 常见的生产环境问题:executor节点如果发生故障,spark不会停止,会调度其他的executor来继续运行。如executorlost错误。

4.ApplicationMaster(AM)产生的原因: 

driver和executor负责计算,而资源调用需要另外专业框架(如yarn)来管理,当向yarn集群提交应用程序时,提交的程序应该包含AM,用于向资源调度器申请执行任务task的资源容器containter,把这些资源用来运行自己的程序任务,监控任务的执行,跟踪任务的状态,结果等问题。

作用就是使得计算和资源两大模块解耦,充当中间者的角色。

  • executor和core

executor:集群中工作节点worker的JVM进程,作用是用于计算;

spark-submit --master yarn --deploy-mode cluster --num-executors=23 --conf spark.executor.cores=2 --conf spark.executor.memory=6g

提交任务时,设置executors  cores  memory
资源就是指executors  cores  memory

  • 运行流程

分为两大块,既资源和计算,当申请好资源,把计算交给资源即可。

 

 

  • client和cluster

spark和yarn的相互结合使用,会有两种部署方式,区别在于driver程序运行的节点,运行在集群里面则为cluster,运行在集群之外则client;此处不深究,后期补充

 

该章节后期深入学习再补充!!!

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值