主页 > 新闻资讯 > Spark计算过程:Spark数据处理过程解析

Spark计算过程:Spark数据处理过程解析

作者:张老师 浏览次数: 2020-02-11 16:49
Spark作为目前主流的大数据计算引擎之一,在大规模数据处理上,有着强劲的优势,这也是目前Spark在大数据领域得到重用的原因之一。而关于Spark的竞争优势,很大程度上来说,就来自Spark计算过程的处理,今天我们就主要来聊一聊Spark数据处理的过程。

Spark作为分布式计算框架,在处理大规模数据计算上,主要的优势来源于计算速度快。

Spark计算过程

Spark作为后来者,吸取了Hadoop的经验教训,在延续Hadoop的MapReduce计算模型的基础之上,将Spark计算过程保持在内存中进行,减少从硬盘读取数据的次数,因此提升了计算速度。

在Hadoop系统当中,主要的计算模型就是MapReduce,没有其他的选择。而Spark在此基础之上,还支持filter,flatMap,count,distinct等其他的计算操作,在针对不同类型的计算任务的处理上,有了更多的选择。

Spark计算过程,离不开Spark数据模型的支持,也就是接下来要说到的RDD。

RDD是Spark中最主要的数据结构,我们可以将RDD理解为一个待处理的数据集,每个RDD都支持MapReduce等操作,在经过MapReduce操作之后,又会产生新的RDD。

RDD的数据集是分区的,把每个数据分区放到不同的分区上进行计算,而实际上大多数MapReduce操作都是在分区上进行计算的。Spark把操作划分为转换(transformation)和动作(action),对RDD进行的转换操作会叠加起来,直到对RDD进行动作操作时才会发起计算。这样的Spark计算过程,使得Spark减少了中间结果的吞吐,打发提升了迭代计算的性能。

而在Spark计算过程中,还伴随着对整个平台系统的资源调度,但是这些操作Spark是不管的,Spark只对计算过程负责,任务管理和资源调度则交由第三方框架来完成,例如YARN和Mesos。成都加米谷大数据,大数据技术知识分享,开设专业大数据培训班,课程详情可联系客服了解!

热点排行
推荐文章
立即申请>>