1.spark基本工作原理

来源:互联网 发布:淘宝联盟的搜索接口 编辑:程序博客网 时间:2024/06/03 16:45

1.分布式计算

客服端的一条执行命令,分布式的散落到集群节点上,每个节点都独立同时执行被分配的任务


2.主要基于内存计算,少数基于磁盘


3.迭代式计算

一个节点的计算结果可以,传递给下一个节点进行继续计算。Spark与MapReduce最大的不同在于,迭代式计算模型:

@1、MapReduce,分为两个阶段,map和reduce,两个阶段完了,就结束了。所以我们在一个job里能做的处理很有限,只能在map和reduce里处理。
@2、Spark,计算模型,可以分为n个阶段,因为它是内存迭代式的。我们在处理完一个阶段以后,可以继续往下处理很多个阶段,而不只是两个阶段。所以,Spark相较于MapReduce来说,计算模型可以提供更强大的功能。


4.Spark的编程过程是什么?
@1,第一,定义初始的RDD,就是说,你要定义第一个RDD是从哪里,读取数据,hdfs、linux本地文件、程序中的集合。
@2,定义对RDD的计算操作,这个在spark里称之为算子,map、reduce、flatMap、groupByKey,比mapreduce提供的map和reduce强大的太多太多了。
@3,其实就是循环往复的过程,第一个计算完了以后,数据可能就会到了新的一批节点上,也就是变成一个新的RDD。然后再次反复,针对新的RDD定义计算操作。。。。
@4,最后,就是获得最终的数据,将数据保存起来。




0 0
原创粉丝点击