数据量:
1~2G左右的表与3~4T的大表进行Join

拆分
将任务数据分为多个结果RDD,将各个RDD的数据写入临时的hdfs目录,最后合并

取所需的字段和数据,并去重,减少data shuffle的规模

调整并行度和shuffle参数

spark-submit 参数

#提高shuffle阶段的任务并行度,降低单个任务的内存占用
--conf spark.default.parallelism=2000
#提高shuffle 缓冲区大小
--conf spark.shuffle.file.buffer=128k
#增加堆外内存大小
--conf spark.yarn.executor.memoryOverhead=1g

增加资源

这就不细说了,num-executors 不是越多越好 有边界

优化数据倾斜

检查数据是否是skewed data,即join出的key value pair大小极度不均,解决方案可以参考:
https://zhuanlan.zhihu.com/p/21483985

spark-大表join优化方案相关推荐

  1. postgresql大表join优化

    postgresql大表join优化 一.背景 1.数据量: 表名 数据量 f_invoice 87346130 f_invoice_item 97535867 2.索引: 表:f_invoice_i ...

  2. 两张超级大表join优化

    一个简单的两表关联,SQL跑了差不多一天一夜,这两个表都非常巨大,每个表都有几十个G,数据量每个表有20多亿,表的字段也特别多. 相信大家也知道SQL慢在哪里了,单个进程的PGA 是绝对放不下几十个G ...

  3. Hive SQL 小表与大表Join 原理与实操

    一.案例演示 1)没有使用map join -- a 表是大表,数据量是百万级别 -- b 表是小表,数据量在百级别 select a.field1 as field1,b.field2 as fie ...

  4. spark sql优化:小表大表关联优化 union替换or broadcast join

    ----原语句(运行18min) SELECTbb.ipFROM(SELECTip ,sum(click) click_num,round(sum(click) / sum(imp), 4) user ...

  5. 【hive】数据倾斜-大表小表join优化mapjoin

    真正让你明白Hive调优系列3:笛卡尔乘积,小表join大表,Mapjoin等问题 0.Hive中的优化分类    真正想要掌握Hive的优化,要熟悉相关的MapReduce,Yarn,hdfs底层源 ...

  6. 大表与大表join数据倾斜_技术分享|大数据技术初探之Spark数据倾斜调优

    侯亚南 数据技术处 支宸啸 数据技术处 在大数据计算中,我们可能会遇到一个很棘手的问题--数据倾斜,此时spark任务的性能会比预期要差很多:绝大多数task都很快执行完成,但个别task执行极慢或者 ...

  7. Spark调优、DataFrame API使用、大表Join、动态分区

    Spark DataFrame [scala版] 实践小结 Spark DataFrame 使用注意事项 下面介绍的是使用Dataframe时 api 文档中没有写,但是需要注意的坑. DataFra ...

  8. 【Spark调优】大表join大表,少数key导致数据倾斜解决方案

    [Spark调优]大表join大表,少数key导致数据倾斜解决方案 参考文章: (1)[Spark调优]大表join大表,少数key导致数据倾斜解决方案 (2)https://www.cnblogs. ...

  9. 数据库大表如何优化?

    数据库大表如何优化? 当MySQL单表记录数过大时,数据库的CRUD性能会明显下降,一些常见的优化措施如下: 1. 限定数据的范围 务必禁止不带任何限制数据范围条件的查询语句.比如:我们当用户在查询订 ...

最新文章

  1. 适当地使用公共语言运行库的垃圾回收器和自动内存管理
  2. LibreOJ #113. 最大异或和
  3. CTF -杂项密码学,常见密码介绍(一)
  4. 基于深度学习的CTR模型DeepCTR 更新啦!
  5. SAP BRF+ Interpretation模式与Generation模式的区别
  6. QT三种窗口、调试终端信息打印、新建菜单、设置窗口标题名称、界面初始化、打开文件对话框、保存文件对话框
  7. 我用休眠做并发控制,搞垮了下游服务
  8. 使用python搭配pandoc实现html批量转word
  9. uniapp php交互,uni-app路由跳转及参数的传参和接收
  10. 关于学习session的一二
  11. Camel可视化操作(结合Gooflow)
  12. 多因素deseq2 formula 怎么理解 如何设置design 哈佛大学——差异表达分析(七)设计公式(Design formulas)多因素差异分析 多个影响因子会影响差异分析结果 多因子
  13. png和ico格式互相转换工具
  14. ajax 获取数据太慢,想写个加载中
  15. 锐捷设备AC虚拟化(VAC)
  16. 【HBase 进阶】-- Region 过多的影响 合理分区数量
  17. balsamiq mockups 3.0破解教程
  18. 一款令人发指的Linux监控软件
  19. JavaSE学习笔记(一)基础知识
  20. excel数据分析案例

热门文章

  1. 使用VueBarcode结合vueEasyPrint打印条形码标签
  2. 绝对好用!Java 变量名蛇形转驼峰方法
  3. 美国无人机技术及相关项目
  4. UML建模工具使用之懒人操作
  5. JAVA 多态,封装,继承
  6. Cyberspace_Security_Learning
  7. linux服务器定时关机重启,Ubuntu Server 10.10 每天定时开关机
  8. 量化交易系统设计的六大细节
  9. 查看jvm的运行参数
  10. 常见生态问题成因及措施