What problem does it solve? Designing a database schema involves many decisions—SQL vs NoSQL, normalization, indexing, migrations, and ORM choice—where mistakes lead to slow queries, data integrity issues, and painful refactors. This Skill provides concrete rules and code patterns to make those decisions correctly from the start. ## Core Features & Use Cases - SQL vs NoSQL Selection: Decision criteria for PostgreSQL, MongoDB, Redis, Elasticsearch, and other engines based on data shape and access patterns. - Schema & Index Design: Normalization examples, correct data types (NUMERIC for money, TIMESTAMPTZ, JSONB), constraints, and indexing strategies including partial and composite indexes. - Migrations & ORM Guidance: Zero-downtime migration patterns with Alembic and Prisma, plus an ORM comparison table (SQLAlchemy, Prisma, Drizzle, TypeORM, Django ORM). - Use Case: When a query is slow or you suspect an N+1 problem, apply the eager-loading patterns (e.g., SQLAlchemy joinedload) and foreign-key indexing rules to fix it. ## Quick Start Ask the AI to design a normalized PostgreSQL schema with proper indexes and constraints for your application's data model.