Spark RDD依赖问题,RDD的高阶函数分类

数据结构RDD(类比于Scala中List)
  数据存储在内存中,分区存储(partition)
  对数据的处理:调用集合中高阶函数
  shuffle

RDD之间是有依赖的

在这里插入图片描述
例如stage1->stage2中那一个大的箭头就是一次shuffle

在这里插入图片描述
其中stage1中又有小的及部分组成

  宽依赖:产生shuffle,数据会存储在磁盘中
    reduceByKey,groupByKey
  窄依赖:不会产生shuffle
    map,filter,union

特殊存在:Join -->join在看宽 / 窄依赖时是需要根据场景的

  这里所讲的shuffle和我们的MapReduce的shuffle过程,前面的Task数据将会被打乱,在分发给下一个stage的各个Task进程处理。

RDD的高阶函数(action函数)

一个RDD调用函数之后,不会转换为一个RDD,触发一个Job的执行
  比如:
   (1):有返回值
    count ->Long
    first -> 第一条数据
    take ->获取前几条数据
    top->获取前几条数据(排序)
   (2):无返回值
    foreach ->打印所有的数据
    saveAsTextFile ->保存数据到文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值