技术教程
PostgreSQL 生成列与写时校验(Generated Column、CHECK 与验证)
使用生成列与CHECK约束在写时进行校验与派生存储,结合表达式索引提升查询效率,并提供一致性验证方法。
PostgreSQL 生成列与表达式索引实践
使用生成列与表达式索引提升查询性能,提供创建与查询示例,适合派生值与不区分大小写搜索。
PostgreSQL 索引与查询优化
概述
PostgreSQL 提供丰富的索引类型与强大的执行计划分析能力。合理选择索引与维护统计信息,是保障查询性能的关键。
已验证技术参数
- 常见索引类型:B-Tree(默认)、Hash、GIN、GiST、BRIN
- 覆盖索引(INCLUDE 列)可在多列查询中减少回表,提高性能
- 执行计划分析使用 `EXPLAIN ANALYZE`;结合 `buffers` 观察 I/O 行为
-
PostgreSQL 复制槽与 WAL 积压治理(清理、告警与验证)
管理逻辑/物理复制槽与WAL积压,设置阈值与告警并在订阅异常时安全清理,提供查询与验证方法确保主库空间与一致性。
PostgreSQL 扩展统计(Extended Statistics)与查询计划稳定性
通过 Extended Statistics(MCV、相关性、NDistinct)提升选择性估算与计划稳定性,提供可验证的配置与观察方法。
PostgreSQL 查询优化与统计信息(扩展统计、计划稳定与验证)
利用扩展统计提升选择度估算并稳定查询计划, 结合工作内存与代价参数优化执行性能, 提供可重复的度量与验证方法。
PostgreSQL 生成列(Generated Columns)与表达式索引实践
使用生成列简化派生字段并结合索引优化查询,减少冗余计算与提升性能。
PostgreSQL 分区与维护窗口策略(Range/Hash、Autovacuum 与验证)
使用声明式分区提高查询与维护效率,结合Autovacuum与维护窗口策略,提供SQL示例与度量方法验证效果。
PostgreSQL 分区策略与时间序列优化(2025)
# PostgreSQL 分区策略与时间序列优化(2025)
时间序列数据写多读多,需在分区/索引/归档上系统优化。
## 一、分区与布局
- 范围分区:按时间窗口分区,减少扫描与维护成本。
- 子分区:按来源或租户进一步细分,降低热点。
## 二、索引与统计
- 索引:覆盖时间与过滤维度;避免过度索引。
- 统计:维护表与列统计,确保计划准确。
## 三、写入与归档
- 批量与队列:控制
PostgreSQL 声明式分区(RANGE)与月度分区维护实践
使用声明式 RANGE 分区实现按月分表与自动维护,示例包含创建、附加、查询与默认分区兜底策略。
PostgreSQL 事件触发与异步队列集成(Event Trigger、LISTEN/NOTIFY 与验证)
使用事件触发与LISTEN/NOTIFY集成异步处理与审计,捕获DDL/DML事件并投递到队列或工作进程,提供实现与验证方法。
PostgreSQL 事务隔离级别与锁策略(2025)
# PostgreSQL 事务隔离级别与锁策略(2025)
正确的事务与锁策略能在一致性与并发之间取得平衡。
## 一、隔离级别
- Read Committed/Repeatable Read/Serializable 的语义与适用场景。
- 幻读与可重复读:理解 MVCC 如何避免或缓解问题。
## 二、锁与并发
- 行锁/表锁/Advisory Lock:选择适配的锁类型。
- 死锁检
