Spark数据倾斜_产生原因及定位处理办法_生产环境

在最近的项目中,历史和实时数据进行关联平滑时出现了数据倾斜,产生了笛卡尔积,具体现象如下:运行内存175GB,核数64,运行代码时,查看SparkUI界面的active jobs ,数据输入是1G,成功的stage为0,一直是0/120,由此,通过排查,的确发生笛卡尔积

Spark数据倾斜产生的原因及解决办法:

Spark数据倾斜主要在shuffle过程中由于不同的key对应的数据量不同导致,具体表现是不同的task处理的数据量不同。在Spark作业中,如果存在可能导致数据倾斜的key,可以考虑将这个key进行过滤,滤除可能导致数据倾斜的数据,从而在Spark作业中避免数据倾斜。另外,提高shuffle过程中的reduce端并行度,即增加reduce端的task数量,可以使得每个task分配到的数据量减少,从而缓解数据倾斜问题。

可参考文章:

Spark如何处理数据倾斜-CSDN博客

相关推荐
运维&陈同学5 分钟前
【zookeeper01】消息队列与微服务之zookeeper工作原理
运维·分布式·微服务·zookeeper·云原生·架构·消息队列
时差9538 分钟前
Flink Standalone集群模式安装部署
大数据·分布式·flink·部署
锵锵锵锵~蒋10 分钟前
实时数据开发 | 怎么通俗理解Flink容错机制,提到的checkpoint、barrier、Savepoint、sink都是什么
大数据·数据仓库·flink·实时数据开发
二进制_博客12 分钟前
Flink学习连载文章4-flink中的各种转换操作
大数据·学习·flink
大数据编程之光14 分钟前
Flink入门介绍
大数据·flink
菠萝咕噜肉i20 分钟前
超详细:Redis分布式锁
数据库·redis·分布式·缓存·分布式锁
长风清留扬23 分钟前
一篇文章了解何为 “大数据治理“ 理论与实践
大数据·数据库·面试·数据治理
Mephisto.java23 分钟前
【大数据学习 | Spark】Spark的改变分区的算子
大数据·elasticsearch·oracle·spark·kafka·memcache
小马爱打代码37 分钟前
Elasticsearch简介与实操
大数据·elasticsearch·搜索引擎
只因在人海中多看了你一眼4 小时前
分布式缓存 + 数据存储 + 消息队列知识体系
分布式·缓存