spark学习12(spark架构原理)
spark采用的是主从式的架构,主节点叫master,从节点是worker
Driver
我们编写的spark就在Driver上,由driver进程执行。
Driver是spark集群的节点之一,或你提交spark程序的机器
Master
master是集群的资源管理者和调度者,类似yarn里面的ResourceManger,还负责监控整个集群的监控状况
Worker
用自己的内存缓存RDD数据
使用内存对partition的数据进行计算
Executor
Task
默认情况下是一个block文件块是一个RDD的分区,一个分区就是一个task任务
spark standalone模式
1)会启动driver,会做一些初始化的工作,在初始化的这个过程中,会发送请求给master,请求注册,这样master就知道有活要干了
2)master接受到请求以后,master发送请求给worker,请求资源调度,说白了请求资源调度就是需要在worker节点上面,启动executor。具体启动几个executor,是在提交代码的时候制定好的
3)executor启动好后会向driver进行反向注册,这样driver就知道哪些executor为该任务进行服务
4)driver注册了executor以后,这个才开始执行spark程序,首先创建RDD,后面就是对RDD进行算子操作,根据对这些RDD的定义,会形成一堆Task任务,比如进行flatMap,map等操作。将task任务发送给executor,executor会接收task任务,就在executor启动task
5)task任务会对RDD里面的partition进行算子操作