ETL中,分区表子表未及时收集统计信息,导致sql执行耗时很长

文章目录

环境

系统平台:银河麒麟 (X86_64)

版本:9.0.3

症状

ETL场景:

有表A,A分区子表 A_p20250101,A_p20250102等,按天分区;

有表B,B分区子表 B_p20250101,B_p20250102等,按天分区;

ETL流程如下:

从流程图中可以看到,node1 生成A_p20250101的数据后,立即执行node2,node2使用node1生成的A_p20250101作为原表之一。

问题现象:

单独执行node2节点,sql执行很快;执行整个流程时,node2执行非常慢。

问题原因

通过执行计划看到执行快时是表c驱动表A_p20250101,执行慢时是表A_p20250101驱动表c;执行计划不合理导致执行很慢。

解决方案

通过排查确认是node1生成表A_p20250101数据后,立即执行了node2,表A_p20250101未及时收集统计信息,使用了错误的执行计划,导致执行慢;在存在类似情况的所有sql前都添加analyze后,问题解决。

相关推荐
宽海智能仓储物流10 小时前
航发自动化立体库异构系统改造:宽海智能30天联调技术全解析
运维·数据仓库·自动化
香菜TTT11 小时前
Redis的哨兵机制
java·数据库·redis
风哥2号12 小时前
数据库教程FGMT13‑Oracle性能优化之数据仓库与分区表
数据库·oracle·性能优化
玉宇夕落12 小时前
Docker + Milvus,数据库永久存放记忆,让对话历史永不丢失
数据库·docker·llm
子非鱼a12 小时前
【WEB】[GXYCTF2019]BabySQli
sql
Zenova EdgeOS13 小时前
工业网关数据持久化:从同步到 WAL 的工程实战
网络·数据库·oracle
企查查数据服务13 小时前
全军禁入下客商准入风控,关联图谱与穿透核查
大数据·开发语言·数据库·php
冰帆<13 小时前
DBViewer — 把数据库工作台,安装进浏览器
数据库·数据可视化·数据同步
学Linux的语莫13 小时前
LangChain Prompts 提示词模板
数据库·人工智能·langchain
敲代码的嘎仔13 小时前
从集群锁失效到异步领券:我用分布式锁 + Redisson + MQ 把领券接口 RT 从 200ms 压到 15ms
java·数据库·redis·分布式·缓存·ai·wpf