spark的架构

转载 2016年05月30日 16:56:12

spark架构采用了分布式计算中的master-slave模型,master是对应集群中含有master进程的节点,slave是集群中含有worker进程的节点,master作为整个集群的控制器,负责整个集群的正常运行,worker相当于是计算节点,接受主节点命令与进行状态汇报。

Executor负责任务的执行,client作为用户的客户端负责提交应用,driver负责控制一个应用的执行 

spark集群部署后,需要在主节点和从节点分别启动master进程和worker进程,对真个集群进行控制,在一个spark应用的执行过程中。driver和worker是两个重要角色

driver程序是应用逻辑执行的起点,负责作业的调度,即task任务的分发,而多个worker用来管理计算节点和创建executor并行处理任务,在执行阶段,driver会将task和task所依赖的file和jar序列化后传递给对于的worker机器,同时executor对相应的数据分区的任务进行处理。


下面详细介绍spakr中的架构基本组件


clustermanager 在standalone模式中即为master主节点, 控制整个集群,监控worker, 在yarn中为资源管理器

worker 从节点, 负责控制计算节点, 启动executor 或者 driver 在yarn模式中为nodemanage 负责计算节点的控制

driver 运行 application的main函数并创建sparkcontxt

executor执行器,在woker node上执行任务的组件,用于启动线程池运行任务,每个application拥有独立的一组executors

sparkcontext 整个应用的上下文,控制应用的生命周期

rdd  spark 的基本计算单元,一组rdd可形成执行的有向五环图rdd graph

dag scheduler 根据作业构建基于stage额 dag ,听提交stage给task scheduler

taskscheduler  将任务分发给executor执行

spark env  县城级别的上下文,存储运行时的重要组件的引用。

mapoutput tracker 负责shuffle元信息的存储。

broadcastmanager 负责广播变量的控制与元信息的存储


spark的整体流程为: client提交应用,master找到一个worker启动driver,driver向master或者资源管理器申请资源,之后将应用转化为rdd graphh 再有dagscheduler将rdd graph转化为stage的有向无环图 提交给taskscheduler,由taskscheduler提价任务给executor执行, 在任务执行的过程中。其他组件协同工作,确保整个应用顺利执行。


spark运行逻辑




Spark(一): 基本架构及原理

Apache Spark是一个围绕速度、易用性和复杂分析构建的大数据处理框架,最初在2009年由加州大学伯克利分校的AMPLab开发,并于2010年成为Apache的开源项目之一,与Hadoop和St...
  • swing2008
  • swing2008
  • 2017年03月08日 11:26
  • 8249

Spark设计理念与基本架构

Spark是一个通用的并行计算框架,由加州伯克利大学(UCBerkeley)的AMP实验室开发于2009年,并于2010年开源。2013年成长为Apache旗下为大数据领域最活跃的开源项目之一。Spa...
  • beliefer
  • beliefer
  • 2016年01月22日 13:52
  • 19291

spark架构

spark架构详解
  • archleaner
  • archleaner
  • 2016年03月29日 09:25
  • 1010

Spark架构及运行机制

Spark架构 Spark架构使用了分布式计算中master-slave模型,master是集群中含有master进程的节点,slave是集群中含有worker进程的节点。...
  • mangoer_ys
  • mangoer_ys
  • 2015年02月02日 17:16
  • 1658

Spark学习笔记(一)--Spark架构

Spark架构采用了分布式计算中的Master-Slave模型。Master是对应集群中的含有Master进程的节点,Slave是集群中含有Worker进程的节点。Master作为整个集群的控制器,负...
  • pangjiuzala
  • pangjiuzala
  • 2016年03月10日 11:15
  • 2435

Spark架构简明分析

1.  RDD有哪些特性? 2.  如何理解Application、Job、Stage、TaskSet以及Task? 3.  Spark如何实现可插拔式的资源管理模块? 4.  Sp...
  • anningzhu
  • anningzhu
  • 2017年03月07日 20:33
  • 1098

SparkStreaming运行机制和架构详解

本篇博文将从以下几点组织文章: 1. 解密Spark Streaming运行机制 2. 解密Spark Streaming架构 一:解密Spark Streaming运行机制 1. DA...
  • snail_gesture
  • snail_gesture
  • 2016年05月08日 14:36
  • 2793

第001讲-Spark内核解密:Spark五大功能组件

一、Spark SQL  SQL Core Spark SQL的核心是把已有的RDD,带上Schema信息,然后注册成类似sql里的”Table”,对其进行sql查询。这里面主要分...
  • zisheng_wang_DATA
  • zisheng_wang_DATA
  • 2016年01月21日 20:26
  • 2575

Spark 架构和组件集的简要概述

原文地址:http://www.adobe.com/cn/devnet/flex/articles/flex4_sparkintro.html  Flex 4 的推出为 Flex 用户界面组件带来了新...
  • sunweihang
  • sunweihang
  • 2011年02月09日 23:59
  • 4150

Spark简述及基本架构

Spark简述Spark发源于美国加州大学伯克利分校AMPLab的集群计算平台。它立足 于内存计算,从多迭代批量处理出发,兼收并蓄数据仓库、流处理和图计算等多种计算范式。 特点: 1、轻 Sp...
  • scgaliguodong123_
  • scgaliguodong123_
  • 2015年06月24日 20:37
  • 4161
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:spark的架构
举报原因:
原因补充:

(最多只允许输入30个字)