主页 > 新闻资讯 > Spark大数据处理技术:Spark框架计算流程

Spark大数据处理技术:Spark框架计算流程

作者:张老师 浏览次数: 2020-02-18 18:56
作为大数据处理的主流框架之一,Spark在近几年的发展趋势无疑是很好的。Spark继承了第一代计算框架Hadoop MapReduce的优势,专注于计算性能优势的提升,大大提升了大规模数据处理的效率。那么今天我们就来聊聊Spark大数据处理技术以及Spark大数据计算流程。

Spark大数据处理技术

Spark是针对超大数据集合的处理而涉及的,基于分布式集群,实现准实时的低延迟数据处理。理论上来时,Spark的计算速度比Hadoop提升了10-100倍。

怎么理解这个10-100倍呢?

Hadoop的MapReduce框架,基于磁盘运行,而Spark框架,主要基于内存运行。同样的程序,如果在磁盘上运行,Spark可以比MapReduce快10倍;而如果在内存上运行,Spark可以比MapReduce快100倍。

Spark延续了Hadoop的MapReduce计算模型,相比之下Spark的计算过程保持在内存中,减少了硬盘读写,能够将多个操作进行合并后计算,因此提升了计算速度。同时Spark也提供了更丰富的计算API。

Spark继承了MapReduce的计算模型,数据计算分为Map和Reduce两个阶段,Map和Reduce过程高度可并行化,过程间耦合度低,单个过程的失败后可以重新计算,而不会导致整体失败;最重要的是数据处理中的计算逻辑可以很好的转换为操作。

但是不同于MapReduce仅支持Map和Reduce操作,Spark支持更多的计算操作,比如说filter,flatMap,count,distinct等。

但是Spark也并非完美,Spark自身只对计算负责,其计算资源的管理和调度需要通过由第三方框架来实现,比如说YARN和Mesos。

以Spark on YARN为例,存在Spark Driver,Worker,Cluster manager三个角色,Driver负责将RDD转换为任务,并进行任务调度。Worker负责任务的执行。YARN负责计算资源的维护和分配。Driver可以运行在用户程序中,或者运行在其中一个Worker上。Spark中的每一个应用(Application)对应着一个Driver。

关于Spark大数据处理技术,相信大家看完以上的Spark框架计算流程,就能有一个相对清晰的认识了。Spark计算框架,在计算性能上确实值得表扬,但是基于存储以及任务调度等方面,还需要第三方工具的支持。成都加米谷大数据,大数据知识分享,大数据培训班课程,更多详情可联系客服了解!
热点排行
推荐文章
立即申请>>