hiveSQL脚本性能优化-减少表扫描

哈喽朋友们,今天上班滕总又遇到了问题,为什么他加了几段代码以后,ETL脚本(HiveSQL)就跑不动了?

需求场景就不赘述了,单从技术角度分析。

我问他ApplicationID是多少?他说没看到,直接报code1了。我看下日志是Tez报错了,代码都没提交到Yarn

Tez报错内容是:Dag submit failed due to Java heap space

很显然是Tez内存溢出了,我在想是代码太复杂了它优化不了执行计划?

然后用explain想看下执行计划,结果执行计划都卡的打不出来。

然后从ETL的上一个版本开始一块一块断点刷执行计划,定位到具体代码块以后发现,是一大段union all导致的

试过过滤空值,没什么效果。

最后发现是大量重复扫描表,果断换了写法,注释大量union all 关联条件收敛到on 后面 用 or 区分,执行计划能打出来了,问题解决了。

结语:这是一个处理复杂组织合并问题是遇到的一个多层次关联案例。正常写法确实直接union all 的话逻辑看上去会更清晰,考虑下分布式计算引擎的特点就不会这样写了,减少表扫描的次数确实给Tez减负了,扫一次就行。

相关推荐
滴图服务-七七4 小时前
滴滴地图:精准定位赋能企业数字化转型
大数据·人工智能·地图服务·甲级测绘资质·商业授权
科技互联.9 小时前
破解数据治理效率瓶颈:2026年Data Agent驱动的数据中台能力横向测评
大数据
jieyucx9 小时前
SQL 查询终极高阶通鉴:从零基础拆解到工业级多表联查、窗口函数与索引优化
数据库·sql
DataX_ruby8210 小时前
2026年数据中台厂商市场份额分析
大数据·人工智能·数据治理·数据中台
汉知宝科技10 小时前
跨境电商品牌合规:出海企业商标管理的特殊挑战与数字化应对
大数据·人工智能
真上帝的左手10 小时前
19. 大数据-数据治理-体系建设全流程
大数据·数据治理
❀抽抽11 小时前
证件照制作API接入指南:700+规格一键生成
大数据·网络·人工智能
Promise微笑11 小时前
绝缘油介损(油介损)测试仪的深层机理、技术演进与精准诊断策略
大数据·网络·人工智能
大C聊AI11 小时前
通用大模型纷纷收费,垂直场景AI工具的价值正在被重估
大数据·人工智能·机器学习·办公效率·ai 工具·智标领航·ai 辅助办公
让学习成为一种生活方式12 小时前
植物基因组数据共享:呼吁全面开放获取--文献精读244
大数据