What problem does it solve?
Helps teams design and review PostgreSQL schemas to avoid common pitfalls, improve query performance, and ensure safe schema evolution across OLTP, analytics, and time-series workloads. It translates database design tradeoffs into concrete decisions about keys, types, indexes, partitioning, and extension selection.
Core Features & Use Cases
- Best-practice guidance for primary key strategy, when to use bigint identity versus UUID, and ID generation considerations.
- Data type recommendations for timestamps, numeric precision, JSONB usage, arrays, ranges, and vector types to match query and storage requirements.
- Indexing patterns including B-tree, GIN, GiST, BRIN, covering and partial indexes, expression indexes, and index-only scan strategies.
- Partitioning and table type guidance for very large tables, time-series data, and bulk-load workloads, plus safe schema evolution and concurrent operations.
- Extension recommendations including pgcrypto, pg_trgm, timescaledb, postgis, and pgvector for advanced capabilities.
- Use case examples: designing a users/orders schema, optimizing JSONB access, architecting partitioned event logs, and planning upsert-friendly constraints.
Quick Start
Analyze the provided PostgreSQL schema DDL and recommend concrete changes for primary keys, data types, indexes, partitioning, and JSONB indexing with brief rationale.