SuperAPI AI 工具集

postgres-patterns

数据与分析

查看项目

更新于 10-15 23:47

技能介绍

用途:PostgreSQL 最佳实践速查参考,适用于编写 SQL 查询或迁移、设计数据库模式、排查慢查询、实现行级安全(RLS)以及配置连接池。详细指导可配合 database-reviewer 智能体使用。

主要能力: 索引速查:等值查询用 B-tree(CREATE INDEX idx ON t (col));范围查询用 B-tree;多条件用复合索引(CREATE INDEX idx ON t (a, b));jsonb 包含查询用 GIN;全文检索 tsv @@ query 用 GIN;时序范围用 BRIN。 数据类型建议:ID 用 bigint(避免 int、随机 UUID);字符串用 text(避免 varchar(255));时间戳用 timestamptz(避免 timestamp);金额用 numeric(10,2)(避免 float);标志用 boolean。 常见模式:复合索引按等值列在前、范围列在后;覆盖索引用 INCLUDE 避免回表;部分索引加 WHERE 条件缩小体积;RLS 策略中将 auth.uid() 包裹在 SELECT 中优化;UPSERT 用 ON CONFLICT DO UPDATE;游标分页用 WHERE id > $last_id 替代 OFFSET;队列处理用 FOR UPDATE SKIP LOCKED。 反模式检测:提供 SQL 用于查找未索引外键、通过 pg_stat_statements 查找慢查询、检查表膨胀。 配置模板:调整 max_connections、work_mem,设置 idle_in_transaction_session_timeout 与 statement_timeout,启用 pg_stat_statements,撤销 public 模式默认权限,并执行 SELECT pg_reload_conf()。

使用方式:按上述速查表与示例 SQL 直接套用;配置项通过 ALTER SYSTEM SET 修改后重载。

限制:资料未提供具体版本要求、性能基准数据或完整安装步骤;部分配置值需按实际内存调整。