Spark核心编程原理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bbaiggey/article/details/51243061

1、首先我们搭建好了spark集群

2、客户端与spark集群建立连接,之后才能提交spark应用程序

3、spark提交应用程序到spark集群上

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

Spark的核心编程是什么?其实,就是:

首先,第一,定义初始的RDD,就是说,你要定义第一个RDD是从哪里,读取数据,hdfs、linux本地文件、程序中的集合。

第二,定义对RDD的计算操作,这个在spark里称之为算子,map、reduce、flatMap、groupByKey,比mapreduce提供的map和reduce强大的太多太多了。

第三,其实就是循环往复的过程,第一个计算完了以后,数据可能就会到了新的一批节点上,也就是变成一个新的RDD。然后再次反复,针对新的RDD定义计算操作。。。。

第四,最后,就是获得最终的数据,将数据保存起来。


每一批节点上的每一批数据,实际上就是一个RDD!!!一个RDD是分布式的,所以数据都散落在一批节点上了,每个节点都存储了RDD的部分partition。


没有更多推荐了,返回首页