Spark架构及运行机制
来源:互联网 发布:8051单片机引脚功能 编辑:程序博客网 时间:2024/05/17 08:28
Spark是基于内存计算的大数据并行计算框架。因为其基于内存计算,较Hadoop中MapReduce计算框架具有更高的实时性,同时保证了高效容错性和可伸缩性。从2009年诞生于AMPLab到现在已经成为Apache顶级开源项目,并成功应用于商业集群中。学习Spark就需要了解其架构及运行机制。
Spark架构
Spark架构使用了分布式计算中master-slave模型,master是集群中含有master进程的节点,slave是集群中含有worker进程的节点。
master作为整个集群的控制器,负责整个集群的正常运行。
worker相当于计算节点,接受主节点命令与状态汇报。
executor负责任务的执行。
client作为用户的客户端负责提交应用。
driver负责控制一个应用的执行。
下图为Spark架构图
Spark集群部署后,需要在主节点和从节点分别启动master进程和worker进程来控制集群。在一个应用执行中,driver是应用逻辑执行的起点,负责作业的调度,即Task任务的分发,而多个worker用来管理计算节点和创建executor并行处理任务。在执行阶段,driver会将task和其依赖的文件传递给worker机器,同时executor对相应数据分区的任务进行处理。
SparkContext: 整个应用的上下文,控制应用的生命周期。
RDD: Spark的基本计算单元,一组RDD可执行的有向无环图RDD Graph。
DAGScheduler: 根据作业构建基于Stage的DAG,并提交给Stage的TaskScheduler。
TaskScheduler: 将任务分给executor执行。
SparkEnv: 线程级别的上下文,存储运行时的重要组件的引用。
Spark的运行流程: Client提交应用,master找到一个worker启动driver,driver向master请求资源,之后将应用转化为RDD Graph,再由DAGScheduler将RDD Graph转换为stage的DAG提交给TaskScheduler,由TaskScheduler提交任务给executor。
2 0
- Spark架构及运行机制
- android 架构及运行机制
- android 架构及运行机制
- android 架构及运行机制
- spark:架构+运行机制的一些总结--50
- Spark架构设计和运行机制简述
- 第125课:Spark Streaming反思和启示:一切皆是流式处理及Spakr Streaming架构和运行机制
- Spark定制班第19课:Spark Streaming架构设计和运行机制大总结
- Spark学习笔记(2)解密Spark Streaming运行机制和架构
- Spark学习笔记(19)Spark Streaming架构设计和运行机制大总结
- Spark简述及基本架构
- Spark架构及运算逻辑
- 理解Spark的运行机制
- 第19课:Spark Streaming架构设计和运行机制大总结
- 第19课:Spark Streaming架构设计和运行机制大总结
- Hbase_架构与运行机制
- MySQL运行机制原理&架构
- Spark(一): 基本架构及原理
- Solr学习笔记之添加文档
- Android挂载以点号(.)开头的文件夹或是文件
- DPDK
- Python实现优先队列
- (hdu step 2.2.5)三角形(求n个三角形能把平面分成多少部分)
- Spark架构及运行机制
- svn重定向命令
- iOS开发之全局变量
- android混淆代码
- iOS NSTimer的使用
- Python正则表达式指南
- The Dragon of Loowater
- 好记性不如烂笔头17-java中的javaBean
- xdebug + phpstorm调试php程序