大数据开发学习之Spark系统架构解读

在大数据技术的学习当中,Hadoop和Spark是重中之重的两个部分,关于Hadoop,之前我们已经介绍过很多了,今天的主题是Spark。作为继Hadoop之后的又一代计算框架,Spark受到重用也是有原因的。今天的大数据开发学习分享,我们来对Spark系统架构做一个详细的介绍。
 

大数据高级培训班


Spark性能优势的原因

Spark是UC Berkeley AMP lab所开源的类HadoopMapReduce的通用并行框架,专门用于大数据量下的迭代式计算。本质上来说,Spark是为了跟Hadoop配合而开发出来的,不是为了取代Hadoop。

Spark运算比Hadoop的MapReduce框架快的原因是因为Hadoop在一次MapReduce运算之后,会将数据的运算结果从内存写入到磁盘中,第二次Mapredue运算时在从磁盘中读取数据,所以其瓶颈在2次运算间的多余IO消耗.

Spark则是将数据一直缓存在内存中,直到计算得到最后的结果,再将结果写入到磁盘,所以多次运算的情况下,Spark是比较快的.其优化了迭代式工作负载。

Spark系统架构

整个Spark集群中,分为Master节点与worker节点,,其中Master节点上常驻Master守护进程和Driver进程,Master负责将串行任务变成可并行执行的任务集Tasks,同时还负责出错问题处理等,而Worker节点上常驻Worker守护进程,Master节点与Worker节点分工不同,Master负载管理全部的Worker节点,而Worker节点负责执行任务。

Driver的功能是创建SparkContext,负责执行用户写的Application的main函数进程,Application就是用户写的程序。Spark支持不同的运行模式,包括Local,Standalone,Mesoses,Yarn模式.不同的模式可能会将Driver调度到不同的节点上执行.集群管理模式里,local一般用于本地调试。

每个Worker上存在一个或多个Executor进程,该对象拥有一个线程池,每个线程负责一个Task任务的执行.根据Executor上CPU-core的数量,其每个时间可以并行多个跟core一样数量的Task。Task任务即为具体执行的Spark程序的任务。

关于大数据开发学习,Spark系统架构,以上就给大家做了一个简单的介绍了。在大数据技术框架当中,Spark至今仍然占据庞大的市场,学习大数据,Spark是必须掌握的重点内容之一。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值