灌水唠嗑区
其他
问答
分区表新增了一个分区之后,为什么建议立刻执行 ANALYZE?不执行会有什么后果?
发表于2026-03-23 11:18:4911次浏览4个评论
为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【GBase版本】:
【操作系统】:
【CPU】:
【问题描述】*:分区表新增了一个分区之后,为什么建议立刻执行 ANALYZE?不执行会有什么后果?
热门帖子
- 12025-12-01浏览数:182759
- 22023-05-09浏览数:25044
- 42023-09-25浏览数:18519
- 52020-05-11浏览数:17526
如果不执行 ANALYZE,后续向新分区写入数据并进行查询时,优化器无法准确估算新分区的数据量和过滤效果,可能出现以下问题:一是对新分区的查询执行计划选择错误,本可以利用分区裁剪跳过旧分区直接查新分区,却因为统计信息缺失导致优化器做出错误判断;二是涉及新分区数据的 JOIN 查询,由于无法估算结果集大小,JOIN 策略可能退化为低效方案;三是包含新旧分区的混合查询,整体执行计划可能因为新分区的统计信息缺失而出现连锁偏差。
所以最佳实践是在 ADD PARTITION 并完成数据导入后,立刻执行 ALTER TABLE t ANALYZE PARTITION p_新分区 更新该分区的统计信息,确保优化器有准确的数据依据。