spark 少量key倾斜的join优化

背景

在使用spark join时,我们经常遇到少量key拥有大量的数据而导致的数据倾斜的问题,这导致了task任务数据处理非常不均匀而影响最终时效

少量key数据倾斜的join优化

这里有一个前提,join的另一边的表没有数据倾斜问题,也就是rdd2没有数据倾斜,然后处理的主要思路还是把这些倾斜的key单独抽取出来形成一个单独的rdd1_0,join的另一边也是把这些倾斜的key单独的抽取出来形成一个单独的rdd2_0,对于剩下的非倾斜的rdd1_1和rdd2_1,直接join即可,然后我们再来看怎么处理倾斜的rdd1_0,我们这里可以对rdd1_0加上一个随机数(0~n),然后对另一边的rdd2_0扩容n倍,由于rdd2_0只包含倾斜的key的数据,所以扩容n倍的内存消耗可以接受。

详细流程图如下所示:

参考文献: https://zhuanlan.zhihu.com/p/22024169

相关推荐
ChinaRainbowSea12 分钟前
7. LangChain4j + 记忆缓存详细说明
java·数据库·redis·后端·缓存·langchain·ai编程
zskj_qcxjqr36 分钟前
告别传统繁琐!七彩喜艾灸机器人:一键开启智能养生新时代
大数据·人工智能·科技·机器人
每日新鲜事1 小时前
Saucony索康尼推出全新 WOOOLLY 运动生活羊毛系列 生动无理由,从专业跑步延展运动生活的每一刻
大数据·人工智能
在未来等你2 小时前
Kafka面试精讲 Day 15:跨数据中心复制与灾备
大数据·分布式·面试·kafka·消息队列
鼠鼠我捏,要死了捏2 小时前
Redis缓存穿透、缓存击穿与雪崩防护及性能优化实战指南
redis·cache·performance
麦兜*3 小时前
MongoDB 常见错误解决方案:从连接失败到主从同步问题
java·数据库·spring boot·redis·mongodb·容器
计算机编程-吉哥3 小时前
大数据毕业设计-基于Python的中文起点网小说数据分析平台(高分计算机毕业设计选题·定制开发·真正大数据)
大数据·hadoop·计算机毕业设计选题·机器学习毕业设计·大数据毕业设计·大数据毕业设计选题推荐·大数据毕设项目
失散135 小时前
分布式专题——5 大厂Redis高并发缓存架构实战与性能优化
java·redis·分布式·缓存·架构
鸿乃江边鸟5 小时前
Flink中的 BinaryRowData 以及大小端
大数据·sql·flink
MicroTech20255 小时前
微算法科技(NASDAQ: MLGO)采用量子相位估计(QPE)方法,增强量子神经网络训练
大数据·算法·量子计算