Spark框架
2015-11-24 21:31
253 查看
Spark的整体流程为:Client提交应用,Master找到一个Worker启动Driver,Driver向Master或者资源管理器申请资源,之后将应用转化为RDD Graph,再由DAGScheduler将RDD Graph转化为Stage的有向无环图提交给TaskScheduler,由TaskScheduler提交任务给Executor执行。在任务执行的过程中,其他组件协同工作,确保整个应用顺利执行。
Client:作为用户的客户端负责提交应用。
Master:作为整个集群的控制器,负责整个集群的正常运行。
Worker:相当于计算节点,接收主节点命令并进行状态汇报。
Driver:负责控制一个应用程序,其运行Application的main()函数,并创建SparkContext。
SparkContext:是整个应用的上下文,控制应用的生命周期。
RDD:Spark的基本计算单元,一组RDD可形成执行的有向无环图RDD Graph。
DAGScheduler:根据作业(Job)构建基于Stage的DAG,并提交Stage给TaskScheduler。
TaskScheduler:将任务分发给Executor。
Executor:执行器,在worker node上执行任务的组件,用于启动线程池运行任务。
Spark框架中其他组件的作用:
SparkConf:负责存储配置信息。
MetricsSystem:监控运行时性能指标信息。
BlockManager:负责存储管理,负责创建和查找block。
BrocastManager:负责广播变量的控制与元信息的存储。
Progress is not created by contented people.
Client:作为用户的客户端负责提交应用。
Master:作为整个集群的控制器,负责整个集群的正常运行。
Worker:相当于计算节点,接收主节点命令并进行状态汇报。
Driver:负责控制一个应用程序,其运行Application的main()函数,并创建SparkContext。
SparkContext:是整个应用的上下文,控制应用的生命周期。
RDD:Spark的基本计算单元,一组RDD可形成执行的有向无环图RDD Graph。
DAGScheduler:根据作业(Job)构建基于Stage的DAG,并提交Stage给TaskScheduler。
TaskScheduler:将任务分发给Executor。
Executor:执行器,在worker node上执行任务的组件,用于启动线程池运行任务。
Spark框架中其他组件的作用:
SparkConf:负责存储配置信息。
MetricsSystem:监控运行时性能指标信息。
BlockManager:负责存储管理,负责创建和查找block。
BrocastManager:负责广播变量的控制与元信息的存储。
Progress is not created by contented people.
相关文章推荐
- android 利用countDownLatch实现主线程与子线程之间的同步
- 第十三周项目二 Kruskal算法的验证
- 【JavaScript】性能更好的js动画实现方式——requestAnimationFrame
- init、loadView、viewDidLoad、viewDidUnload、dealloc的关系
- 安卓版微信小视频先保存再分享方法
- 为什么匿名内部类和局部内部类只能访问final变量
- 通过 Gesture (手势)实现翻页
- 关键字volatile与关键字synchronized
- 关联原理说明
- Struts2中的ModelDriven机制及其运用
- Struts2中的ModelDriven机制及其运用
- 自定义相机添加闪光灯设置
- Switch Game
- ARM64的启动过程之(六):异常向量表的设定
- Can't install RMagick 2.15.4. Can't find Magick-config or pkg-config in /usr/local/sbin:/usr/local/b
- 2015 CCPC Secrete Master Plan
- 1081. Rational Sum
- Struts2中的ModelDriven机制及其运用
- 中文Ubuntu系统根目录文件夹名称变为英文
- Linux下Vsftp配置及详解