Database design, query optimization, migrations, and data modeling for SQL and NoSQL databases. Use when designing schemas, writing queries, optimizing performance, planning migrations, or working with DynamoDB, PostgreSQL, MySQL, or any database. Also use when the user says "database", "schema", "query", "migration", "index", "data model", or "DynamoDB".
Design reliable, performant data layers. Read the relevant reference for the database type and concern.
Read references/schema-design.md for entity modeling, normalization, and index strategy.
Read references/query-optimization.md for writing efficient queries, avoiding N+1, and using indexes effectively.
Read references/migrations.md for safe schema changes, zero-downtime migrations, and rollback strategies.
Dispatch the subagent for schema design and migration work.
database-engineerSELECT * in production queries — specify columnsreferences/schema-design.md — Entity modeling, normalization, denormalization, indexing strategy, DynamoDB vs SQL patterns.references/query-optimization.md — Query performance, N+1 prevention, index usage, EXPLAIN analysis, pagination.references/migrations.md — Safe schema changes, zero-downtime migrations, rollback strategies, data backfills.references/dynamodb-patterns.md — Single-table design, key patterns, GSI overloading, transactions, streams, TTL, capacity planning.references/mongodb-patterns.md — Embed vs reference, indexes, aggregation pipeline, transactions, connection management.references/postgresql-patterns.md — Schema constraints, index types, CTEs, window functions, zero-downtime migrations, connection pooling.Subagent: database-engineer — designs schemas, writes migrations, optimizes queries. Located at ~/.claude/agents/database-engineer.md.