Agent skill

database-optimization

SQL query optimization and database performance specialist. Use when optimizing slow queries, fixing N+1 problems, designing indexes, implementing caching, or improving database performance. Works with PostgreSQL, MySQL, and other databases.

Stars 232
Forks 15

Install this agent skill to your Project

npx add-skill https://github.com/aiskillstore/marketplace/tree/main/skills/89jobrien/database-optimization

SKILL.md

Database Optimization

This skill optimizes database performance including query optimization, indexing strategies, N+1 problem resolution, and caching implementation.

When to Use This Skill

  • When optimizing slow database queries
  • When fixing N+1 query problems
  • When designing indexes
  • When implementing caching strategies
  • When optimizing database migrations
  • When improving database performance

What This Skill Does

  1. Query Optimization: Analyzes and optimizes SQL queries
  2. Index Design: Creates appropriate indexes
  3. N+1 Resolution: Fixes N+1 query problems
  4. Caching: Implements caching layers (Redis, Memcached)
  5. Migration Optimization: Optimizes database migrations
  6. Performance Monitoring: Sets up query performance monitoring

How to Use

Optimize Queries

Optimize this slow database query
Fix the N+1 query problem in this code

Specific Analysis

Analyze query performance and suggest indexes

Optimization Areas

Query Optimization

Techniques:

  • Use EXPLAIN ANALYZE
  • Optimize JOINs
  • Reduce data scanned
  • Use appropriate indexes
  • Avoid SELECT *

Index Design

Strategies:

  • Index frequently queried columns
  • Composite indexes for multi-column queries
  • Avoid over-indexing
  • Monitor index usage
  • Remove unused indexes

N+1 Problem

Pattern:

python
# Bad: N+1 queries
users = User.all()
for user in users:
    posts = Post.where(user_id=user.id)  # N queries

# Good: Single query with JOIN
users = User.all().includes(:posts)  # 1 query

Examples

Example 1: Query Optimization

Input: Optimize slow user query

Output:

markdown
## Database Optimization: User Query

### Current Query
```sql
SELECT * FROM users
WHERE email = 'user@example.com';
-- Execution time: 450ms

Analysis

  • Full table scan (no index on email)
  • Scanning 1M+ rows

Optimization

sql
-- Add index
CREATE INDEX idx_users_email ON users(email);

-- Optimized query
SELECT id, email, name FROM users
WHERE email = 'user@example.com';
-- Execution time: 2ms

Impact

  • Query time: 450ms → 2ms (99.5% improvement)
  • Index size: ~50MB

## Best Practices

### Database Optimization

1. **Measure First**: Use EXPLAIN ANALYZE
2. **Index Strategically**: Not every column needs an index
3. **Monitor**: Track slow query logs
4. **Cache**: Cache expensive queries
5. **Denormalize**: When justified by read patterns

## Reference Files

- **`references/query_patterns.md`** - Common query optimization patterns, anti-patterns, and caching strategies

## Related Use Cases

- Query optimization
- Index design
- N+1 problem resolution
- Caching implementation
- Database performance improvement

Expand your agent's capabilities with these related and highly-rated skills.

aiskillstore/marketplace

perigon-backend

Perigon ASP.NET Core + EF Core + Aspire conventions

232 15
Explore
aiskillstore/marketplace

perigon-agent

Pointers for Copilot/agents to apply Perigon conventions

232 15
Explore
aiskillstore/marketplace

perigon-angular

Angular 21+ standalone/Material/signal conventions for Perigon WebApp

232 15
Explore
aiskillstore/marketplace

fastapi-mastery

Comprehensive FastAPI development skill covering REST API creation, routing, request/response handling, validation, authentication, database integration, middleware, and deployment. Use when working with FastAPI projects, building APIs, implementing CRUD operations, setting up authentication/authorization, integrating databases (SQL/NoSQL), adding middleware, handling WebSockets, or deploying FastAPI applications. Triggered by requests involving .py files with FastAPI code, API endpoint creation, Pydantic models, or FastAPI-specific features.

232 15
Explore
aiskillstore/marketplace

context7-efficient

Token-efficient library documentation fetcher using Context7 MCP with 86.8% token savings through intelligent shell pipeline filtering. Fetches code examples, API references, and best practices for JavaScript, Python, Go, Rust, and other libraries. Use when users ask about library documentation, need code examples, want API usage patterns, are learning a new framework, need syntax reference, or troubleshooting with library-specific information. Triggers include questions like "Show me React hooks", "How do I use Prisma", "What's the Next.js routing syntax", or any request for library/framework documentation.

232 15
Explore
aiskillstore/marketplace

browser-use

Browser automation using Playwright MCP. Navigate websites, fill forms, click elements, take screenshots, and extract data. Use when tasks require web browsing, form submission, web scraping, UI testing, or any browser interaction.

232 15
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results