---
title: PostgreSQL 扩展统计(Extended Statistics)与查询计划稳定性
keywords:
- 扩展统计
- MCV
- 相关性
- NDistinct
- 计划稳定性
description: 通过 Extended Statistics(MCV、相关性、NDistinct)提升选择性估算与计划稳定性,提供可验证的配置与观察方法。
date: 2025-11-26
tags:
- MCV
- NDistinct
- PostgreSQL
- 性能优化
- 扩展统计
- 数据库
- 相关性
- 计划稳定性
categories:
- 文章资讯
- 编程技术
---
PostgreSQL 扩展统计(Extended Statistics)与查询计划稳定性
关键实践与参数
- 创建扩展统计:
CREATE STATISTICS s (dependencies, mcv, ndistinct) ON a, b FROM t; - 提升估算:处理列相关性与高频值分布,避免错误计划。
- 维护:
ANALYZE更新统计;调整default_statistics_target。
验证方法
EXPLAIN (ANALYZE)比较有/无扩展统计的计划差异与耗时。- 观察行数估算误差与连接策略变化(Nested Loop/Hash Join)。
- 长期监控计划波动并回归测试关键查询。
注意事项
- 扩展统计会增加维护开销;仅对关键表与列组合启用。
- 数据分布变化需重新
ANALYZE;避免旧统计造成误导。 - 与索引与分区策略协同,综合优化。

发表评论 取消回复