大数据课程K5——Spark的框架核心概念

文章作者邮箱:[email protected]              地址:广东惠州

 ▲ 本章节目的

⚪ 了解Spark的框架核心概念;

⚪ 掌握Spark的Spark集群模式安装;

⚪ 掌握Spark的Spark架构;

⚪ 掌握Spark的Spark调度模块;

一、Spark框架核心概念

1. RDD。弹性分布式数据集,是Spark最核心的数据结构。有分区机制,所以可以分布式进行处理。有容错机制,通过RDD之间的依赖关系来恢复数据。

2. 依赖关系。RDD的依赖关系是通过各种Transformation(变换)来得到的。父RDD和子RDD之间的依赖关系分两种:①窄依赖  ②宽依赖。

①针对窄依赖:父RDD的分区和子RDD的分区关系是:一对一。

窄依赖不会发生Shuffle,执行效率高,spark框架底层会针对多个连续的窄依赖执行流水线优化,从而提高性能。例如 map  flatMap等方法都是窄依赖方法。

②针对宽依赖:父RDD的分区和子RDD的分区关系是:一对多。

宽依赖会产生shuffle,会产生磁盘读写,无法优化。

3. DAG。有向无环图,当一整条RDD的依赖关系形成之后,就形成了一个DAG。一般来说,一个DAG,最后都至少会触发一个Action操作,触发执行。一个Action对应一个Job任务。

4. Stage。一个DAG会根据RDD之间的依赖关系进行Stage划分,流程是:以Action为基准,向前回溯,遇到宽依赖,就形成一个Stage。遇到窄依赖,则执行流水线优化(将多个连续的窄依赖放到一起执行)。

5. task。任务。一个分区对应一个task。可以这样理解:一个Stage是一组Task的集合。

6. RDD的Transformation(变换)操作:懒执行,并不会立即执行。

7. RDD的Action(执行)操作:触发真正的执行。

二、Spark集群模式安装

你可能感兴趣的:(大数据,spark,分布式)