Spark应用的结构

Driver + Executor
Driver:运行SparkContext上下文的地方(jvm),SparkContext进行初始化的地方(jvm),进行RDD初始化的地方(jvm),Task运行资源申请和RDD job/Task调度的调度
一般我们认为main方法的位置就是driver(main方法是SparkContext的构建)
一个应用只有一个driver

Executor:
具体task运行的地方,一个executor可以运行多个task任务,一个应用可以有多个Executor
进程方面问题:
local模式:
driver 和 executor运行在同一个进程中 SparkSubmit,以线程的方式来区分
standalone:
driver:
在sparksubmit进程上
executor:
CoarseGrainedExecutorBackend
注意:spark-submit脚本的一次执行就是一个spark应用(spark-shelld底层就是spark-submit)
一个应用可以包含多个job(>=0)
一个job里面可以包含多个stage(>0)
一个stage可以包含多个task(>0)
task就是最小的运行单位,是在executor处理对应分区数据的线程
task的数量和rdd的分区数是一致的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值