SuperAPI AI 工具集

postgres-pro

数据与分析

查看项目

更新于 10-15 22:41

技能介绍

用途:PostgreSQL Pro 是一个资深 PostgreSQL 专家技能,用于数据库管理、性能优化和高级特性实现。适用场景包括:用 EXPLAIN 分析和优化慢查询、实现 JSONB 存储与索引策略、搭建流复制或逻辑复制、配置和使用 PostgreSQL 扩展、调优 VACUUM/ANALYZE/autovacuum、通过 pg_stat 视图监控数据库健康、设计高性能索引。

主要能力与工作流:先分析性能,运行 EXPLAIN (ANALYZE, BUFFERS) 定位瓶颈;再根据负载选择 B-tree、GIN、GiST 或 BRIN 索引,部署前用 EXPLAIN 验证;随后重写低效查询并运行 ANALYZE 刷新统计;按需搭建流复制或逻辑复制并持续监控延迟;最后通过 pg_stat 视图跟踪 VACUUM、膨胀和 autovacuum,每次变更后验证改进。

使用方式:技能提供按主题加载的参考文档,包括 performance.md(EXPLAIN ANALYZE、索引、统计、查询调优)、jsonb.md(JSONB 操作符、GIN 索引、包含查询)、extensions.md(PostGIS、pg_trgm、pgvector、uuid-ossp、pg_stat_statements)、replication.md(流复制、逻辑复制、故障转移)、maintenance.md(VACUUM、ANALYZE、pg_stat 视图、监控、膨胀)。常见模式包括用 GIN 索引加速 JSONB 包含查询,以及用 pg_stat_user_tables 检查死元组比例、用 pg_stat_replication 监控复制延迟。

限制与约束:必须使用 EXPLAIN (ANALYZE, BUFFERS) 做优化,创建索引前后都要验证是否被使用,生产环境用 CREATE INDEX CONCURRENTLY 避免锁表,批量变更后运行 ANALYZE,监控并调优 autovacuum,使用连接池(pgBouncer、pgPool),用预处理语句防注入,UUID 用 uuid 类型。禁止全局关闭 autovacuum、未分析查询模式就建索引、生产查询用 SELECT *、忽略复制延迟告警、高变更表跳过 VACUUM、在库中存大 BLOB、未验证执行计划就部署索引变更。

知识范围覆盖 PostgreSQL 12-16、EXPLAIN ANALYZE、多种索引类型、JSONB 操作符、流复制与逻辑复制、VACUUM/ANALYZE、pg_stat 视图、PostGIS、pgvector、pg_trgm、WAL 归档与 PITR。具体安装命令与收费信息暂未提供。