RDD就是一个不可变的带分区的记录集合,Spark提供了RDD上的两类操作,转换(transformation)和动作(action)。

  • 转换是用来定义一个新的RDD,包括map, flatMap, filter, union, sample, join, groupByKey, cogroup, ReduceByKey, cros, sortByKey, mapValues等。
  • 动作是返回一个结果,包括collect, reduce, count, save, lookupKey。

1. 宽窄依赖

  • 依赖关系本质上刻画了一种数据流向;
  • 窄依赖:一父对一子,更严谨地说,最多有一个孩子;
  • 宽依赖:一父对多子;
    • 也即父节点对应的分区(partition)会划分为多份(需要 shuffle),分别由子节点进行处理;
    • 这时需要进行 shuffle,也即会依据Record的key进行数据重组,这个过程即为Shuffle(洗牌)

Spark RDD 之间的依赖关系相关推荐

  1. spark系列11:RDD之间的依赖关系,窄依赖和宽依赖

    1.RDD 之间的依赖关系 导读 讨论什么是 RDD 之间的依赖关系 继而讨论 RDD 分区之间的关系 最后确定 RDD 之间的依赖关系分类 完善案例的逻辑关系图 什么是 RDD 之间的依赖关系? 什 ...

  2. Spark RDD 特征及其依赖

    1 RDD特征 分区(partition) 有一个数据分片列表,能够将数据进行切分,切分后的数据能够进行并行计算,是数据集的原子组成部分 函数 compute 计算每个分片,得出一个可遍历的结果,用于 ...

  3. 宽依赖和窄依赖_Spark RDD中的依赖关系:宽依赖和窄依赖narrow/widedependency

    前言:前面我们讲过,RDD的转化Transformation操作是一个RDD生成另一个新的RDD的过程,那么新的RDD必然依赖原来的RDD.那么RDD的依赖分为几种,分别是什么含义呢?为什么要分类呢? ...

  4. Spark RDD的窄依赖和宽依赖

    目录 前言 一.窄依赖 二.宽依赖 三.使用WC演示窄依赖.宽依赖 四.窄依赖中的join 五.总结 前言 RDD的五大特性之一就是RDD之间有依赖关系,描述了RDD如何从源头计算过来的. 这样可以做 ...

  5. Spark RDD的宽依赖和窄依赖

    系列文章目录 Spark RDD 的宽窄依赖关系 一.RDD的依赖关系? 在 Spark 中,RDD 分区的数据不支持修改,是只读的.如果想更新 RDD 分区中的数据,那么只 能对原有 RDD 进行转 ...

  6. Spring5各模块之间的依赖关系

    Spring 官网对Spring5 各模块之间的关系也做了详细说明: 我本人也对Spring5 各模块做了一次系统的总结,描述模块之间的依赖关系,希望能对小伙伴们有所帮助. 深入了解Spring 的核 ...

  7. Prism 文档 第三章 管理组件之间的依赖关系

                                                                          第3章:管理组件之间的依赖关系 基于Prism库的复合应用程 ...

  8. 依赖:类之间的依赖关系【python】

    类之间的依赖关系:   八股文如下: 依赖关系是最常见的一种关系,是一种使用关系,即一个类的实现(或部分方法的实现)需要另外一个类的协助,所以应尽量避免双向的互相依赖关系: 对象 A 持有对象 B 的 ...

  9. NetCore 依赖注入之服务之间的依赖关系

    简单介绍,直接官方文档 https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/dependency-injection?view=aspn ...

最新文章

  1. JVM---虚拟机栈(动态链接与方法返回地址)
  2. 六大“未来式”存储器,谁将脱颖而出?
  3. 洛谷——P2256 一中校运会之百米跑
  4. [未解决]jQuery中autocomplete的source格式问题
  5. uedit富文本编辑器
  6. viewDidLoad、viewWillAppear、viewWillDisappear
  7. jenkins添加linux作为slave
  8. 让Ubuntu更多的使用物理内存
  9. T-SQL语言(一)
  10. zTree树形控件讲解
  11. 数学运算模块:Python3.7的math模块与cmath模块
  12. 艾客私域风暴进行时—打造服务型私域,赋能品牌增长新引擎
  13. 徐思201771010132《面向对象程序设计(java)》第十五周学习总结
  14. 使用 JDBC 进行 MySQL 编程
  15. 把edge默认上网页面改为百度
  16. 隐藏控件--HiddenField控件
  17. 运筹说 第5期 | 运筹学江湖的形成
  18. Postgresql on conflict do update 设置当前值,原始值,当前值与原始值相加值
  19. User-Agent大全
  20. 专访富数科技吴海斌:隐私计算头部效应明显,2022年落地才是硬道理

热门文章

  1. Windows上配置iPhone开发环境
  2. Memcache的使用和协议分析详解
  3. ssm注解配置连接mysql_基于注解和配置类的SSM(Spring+SpringMVC+Mybatis)项目详细配置...
  4. 数据结构线性表的三个属性
  5. java金字塔显示_java控制台输出数字金字塔示例分享
  6. java遍历hashmapk v_Java HashMap 遍历方式探讨
  7. OpenCV图像拼接之Stitching和Stitching_detailed
  8. tf.read_file和tf.image.decode_jpeg处理图片(转)
  9. debian、ubuntu安装metasploit通用方法
  10. vue的route和router的区别