- 比如两个rdd 两个分区合并去他们的并集 intersection 去数据的交集 subtract去差集
- mappartition与map像是遍历的单位是每个pation分区的数据进来的是iterrter是迭代器
- distinct去重(map+reducebykey+map)
- cogroup 作用在keyv格式上的算子
- 宽依赖产生shuffer 也就是说和磁盘还打交道
- stage是由一组并行的task组成碰到宽依赖会划分一个stage
- mapreduce每一度都落地磁盘 spark是shuffer调优做好基于内存还是挺快的]
- shuffer write的时候 两个并行的task处理的管道数据才落地
- stage的并行度由finalrdd的partion决定的
- 1 提高stage的并行度
- 方法 reducebykey(numpartion分区)就能决定
- 方法2 jion(numpartion)也可以决定
- 如何改变rdd的分区数量
- reducebykey groupbykey
- stage的切割规则是从后往前 遇到宽依赖算子就切割
- 碰到action算子有个job 将job切成stage 划分stage 形成一个新的dag 通过taskset 发送到taskscheduler 发送taske 到worker端去工作
- 资源调度和任务调度
- coalesec算子是可以指定分区产生不产生shuffe repartition就是coalsec的一个封装 repartition多用于争夺分区 cosecse多用于减少分区1 使用 cosec如果由少的分区
- 到多的分区的话 还不让他产生shuffer是不起作用的
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。