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后,问题解决。

相关推荐
xier_ran2 小时前
【infra之路】GPU 存储层次总结:L1 / L2 / HBM
java·网络·数据库
山甫aa4 小时前
Javaweb---MyBatis增删改查
java·数据库·后端·mybatis·springboot
@insist1235 小时前
系统集成项目管理工程师-信息和文档管理
网络·数据库·软考·系统集成项目管理工程师·软考中项·软件水平考试
残 风6 小时前
PostgreSQL 存储机制详解
数据库·postgresql·开源·数据库开发
JacksonMx7 小时前
Java CompletableFuture 异步编程实战:从入门到架构师避坑指南
linux·数据库·python
tachibana27 小时前
性能指标的口径选择
数据库·人工智能·架构·大模型·llm
机器人梦想家8 小时前
具身机器人视觉服务的异步回调与并发控制
数据库·算法·机器人
小妖同学学AI8 小时前
开源向量数据库的王者:Milvus 深度解析,专为 AI 应用打造的云原生搜索引擎!
数据库·开源·milvus
l1258659 小时前
# RAG上线评估指标体系:六大核心指标与压测实战全解析
数据库·人工智能·python·mysql·langchain·milvus