天天看点

Spark——分布式并行计算概念一,概念二,基于数据集的计算框架三,Spark基本概念及拆分任务的流程

   一个资源密集型的任务,需要一组资源并行的完成,当计算机任务过重,就把计算任务拆分,然后放到多个计算节点上同时执行,这就是分布式并行计算啦。分布式并行计算,强调用硬件的堆叠,来解决问题。

   spark解决的问题:有了spark,只要把数据和程序交给spark,它会机智地进行数据切分、算法复制、分布执行、结果合并。spark屏蔽了分布并行计算的细节,让我们可以快速开发分布并行的应用。

   spark的计算范式是数据集上的计算,在实用spark的时候,要按照spark的范式写算法。Spark在数据集的层次上进行分布并行计算,它只认成堆的数据。

    提交给spark的任务,都必须满足两个条件:

数据是可以分块的,每块构成一个集合。

算法只能在集合级别执行操作。

     比如,对于文本文件,在Spark中,一行就是一条记录,若干条记录组成一个集合。我们 原来的算法直接在每一行上进行计算,就不行了。需要先构建数据集,然后通过数据集的操作, 实现我们的目的。

     所以,Spark是一种粗粒度、基于数据集的并行计算框架。

  1,将数据载入并构造数据集,在spark中,这个数据集被称为RDD(弹性分布数据集)。

  2,对数据集进行map操作,指定行为

  3,对map中的数据集进行collect操作,并获得合并的结果。

继续阅读