Spark 原理_逻辑图_宽依赖_分析 | 学习笔记

简介: 快速学习 Spark 原理_逻辑图_宽依赖_分析

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

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


Spark 原理_逻辑图_宽依赖_分析


内容简介

一、Rdd 中的依赖关系

二、什么是宽依赖

三、如何判断宽依赖

 

一、Rdd 中的依赖关系有两种

1.窄依赖

2.宽依赖

 

二、什么是宽依赖,哪些算子会生成宽依赖

宽依赖就是 shuffle 中的依赖关系,换句话说,只有 shuffle 产生的地方才是宽依赖

 

三、如何判断宽依赖

1.判断宽窄依赖,是否含有 shuffle ,如果含有 shuffle,是不能把分区放到同一流水线上执行,有 shuffle 就是宽依赖

2.举个 reduceByKey 的例子,rddB = rddAreduceByKeycurragg)—curr+agg会产生如下依赖关系,reduceBykey 生成的关系就是宽依赖

image.png

假如 rddA p1 中的数据为(hadoop,1) ( spark,1),p2 中的数据为 (spark,1)(hadoop,1),p3 为(hadoop,1)(flume,1)

3.在运行中大致的步骤

1)分区函数,hadoop.toHashCode%2 = 1 or 2

决定 rddA 中三个分区的每条数据应该发个 rddB 的那个分区

(2)Hadoop.分区 =1 spark分区 =2

将数据往分区函数塞

4.shuffle 的判断

1)将 rddA 的p1 拆开,将 hadoop 分发给 rddB 中的 p1,将 spark 分发给 rddB 中的 p2,这个过程就是 shuffle

对于 rddA 中的一个分区来说,其将一部分分发给 rddB p1,另外一部分分发给 rddB p2,这不是数据流动,而是分发

(3)ReduceByKey 所生成的 shuffleRDD ,对应的是 shuffledependency(也叫宽依赖)

相关文章
|
6天前
|
机器学习/深度学习 SQL 分布式计算
Spark核心原理与应用场景解析:面试经验与必备知识点解析
本文深入探讨Spark核心原理(RDD、DAG、内存计算、容错机制)和生态系统(Spark SQL、MLlib、Streaming),并分析其在大规模数据处理、机器学习及实时流处理中的应用。通过代码示例展示DataFrame操作,帮助读者准备面试,同时强调结合个人经验、行业趋势和技术发展以展现全面的技术实力。
|
6天前
|
存储 分布式计算 数据处理
bigdata-35-Spark工作原理
bigdata-35-Spark工作原理
14 0
|
6天前
|
存储 分布式计算 负载均衡
【大数据技术Hadoop+Spark】MapReduce概要、思想、编程模型组件、工作原理详解(超详细)
【大数据技术Hadoop+Spark】MapReduce概要、思想、编程模型组件、工作原理详解(超详细)
75 0
|
6天前
|
存储 分布式计算 Hadoop
【大数据技术Hadoop+Spark】HDFS概念、架构、原理、优缺点讲解(超详细必看)
【大数据技术Hadoop+Spark】HDFS概念、架构、原理、优缺点讲解(超详细必看)
166 0
|
6天前
|
SQL 存储 分布式计算
spark执行sql的原理是什么
spark执行sql的原理是什么
12 1
|
6月前
|
分布式计算 Java Spark
图解Spark Graphx实现顶点关联邻接顶点的collectNeighbors函数原理
图解Spark Graphx实现顶点关联邻接顶点的collectNeighbors函数原理
36 0
|
6天前
|
存储 分布式计算 大数据
【大数据技术Hadoop+Spark】Spark RDD设计、运行原理、运行流程、容错机制讲解(图文解释)
【大数据技术Hadoop+Spark】Spark RDD设计、运行原理、运行流程、容错机制讲解(图文解释)
88 0
|
6天前
|
分布式计算 资源调度 大数据
【大数据技术Hadoop+Spark】Spark架构、原理、优势、生态系统等讲解(图文解释)
【大数据技术Hadoop+Spark】Spark架构、原理、优势、生态系统等讲解(图文解释)
445 0
|
7月前
|
SQL 分布式计算 算法
【大数据处理框架】Spark大数据处理框架,包括其底层原理、架构、编程模型、生态圈
【大数据处理框架】Spark大数据处理框架,包括其底层原理、架构、编程模型、生态圈
279 0
|
SQL 分布式计算 Java
五、【计算】Spark原理与实践(下) | 青训营笔记
五、【计算】Spark原理与实践(下) | 青训营笔记
五、【计算】Spark原理与实践(下) | 青训营笔记