Spark 原理_总体介绍_逻辑执行图 | 学习笔记

简介: 快速学习 Spark 原理_总体介绍_逻辑执行图

开发者学堂课程【大数据 Spark 2020版(知识精讲与实战演练)第三阶段Spark 原理_总体介绍_逻辑执行图】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/689/detail/12007


Spark 原理_总体介绍_逻辑执行图


逻辑执行图是 RDD 的一组组成,是 RDD 的转换,表示了数据的处理过程,将数据处理过程表示出来,可以将逻辑执行图转化为物理执行图,物理执行图在集群组成中运行。

逻辑执行图步骤:

1.RDD 如何生成

2.通过图了解 RDD 之间的关联

image.png

打开代码,可以看出使用 sc 创建 RDD,使用算子 flatmap 转成 splitRDD 的过程,textRDD 使用 flatmap 算子生成splitRDD 的关系,splitRDD 使用 map 算子生成 tupleRDD,而 tupleRDD 使用 reduceByKey 算子生成reduceRDDreduceRDD 使用 map 算子生成 strRDD,逻辑执行图如下:

image.png

逻辑执行图负责 textRDD 如何转化为 splitRDDsplitRDD 存放哪些数据;splitRDD 如何转化为 tupleRDDtupleRDD 中存放哪些数据,彼此之间存在依赖关系。tupleRDD -RDD tupleRDD,是如何创建出来的,都由逻辑执行图得出,逻辑执行图描述数据如何流动,如何计算。

接下来改变代码,注释掉获取结果栏,编写 strRDD.todebugstring,其打印结果即为逻辑执行图,运行代码结果如下:

image.png

Todebugstring 是将 strRDD 预运行,取出 strRDD 所有的依赖关系,可以看到s trRDD 的对应关系。

也依赖了一个-RDD,是一个 reduceRDD,与代码相呼应,可以看到整个逻辑执行图通过 Todebugstring 打印出来,自上而下,最上面是离结果最近的 RDD,由副类计算得到。

打开笔记,可以看到逻辑执行图如下:

image.png

最左侧是 parallelcollectionRDD,是由 textRDD 通过 parallelize 来得到,再次通过 flatmap 算子得到新的 RDD,经过 map 算子生成另一个 mappartitionsRDD,再次经过 map 算子生成另一个 mappartitionsRDD,通过 reducebykey 算子得到 shuffledRDD,再次经过 map 得到 mappartitionsRDD,在 mappartitionsRDD 分区1parallelcollectionRDD 的分区1紧密相联,通过父亲1计算生成。

逻辑生成图并不真实存在,代表 RDD一个依赖的链条,代表逻辑执行图,代表数据如何流转。

目录
打赏
0
0
0
0
127
分享
相关文章
Spark的几种去重的原理分析
Spark的几种去重的原理分析
190 0
大数据-92 Spark 集群 SparkRDD 原理 Standalone详解 ShuffleV1V2详解 RDD编程优化
大数据-92 Spark 集群 SparkRDD 原理 Standalone详解 ShuffleV1V2详解 RDD编程优化
68 0
大数据-92 Spark 集群 SparkRDD 原理 Standalone详解 ShuffleV1V2详解 RDD编程优化
大数据-97 Spark 集群 SparkSQL 原理详细解析 Broadcast Shuffle SQL解析过程(一)
大数据-97 Spark 集群 SparkSQL 原理详细解析 Broadcast Shuffle SQL解析过程(一)
155 0
大数据-97 Spark 集群 SparkSQL 原理详细解析 Broadcast Shuffle SQL解析过程(二)
大数据-97 Spark 集群 SparkSQL 原理详细解析 Broadcast Shuffle SQL解析过程(二)
137 0
spark执行sql的原理是什么
spark执行sql的原理是什么
194 1
Spark Connector Reader 原理与实践
本文主要讲述如何利用 Spark Connector 进行 Nebula Graph 数据的读取。
800 0
钉钉群直播【Spark Relational Cache 原理和实践】
主要介绍Relational Cache/物化视图的历史和背景,以及EMR Spark基于Relational Cache加速Spark查询的技术方案,及如何通过基于Relational Cache的数据预计算和预组织,使用Spark支持亚秒级响应的交互式分析使用场景。
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
114 79
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等