database-query-optimization について
遅いクエリや性能低下を調べる開発者向けのデータベースクエリ最適化スキルです。クエリ分析、インデックス戦略、最適化手法を参照ガイドとともに扱います。
主な機能
- 01EXPLAIN ANALYZE による性能分析
- 02インデックス戦略ガイド
- 03クエリ最適化手法
- 04最適化チェックリスト
活用シーン
- 01応答の遅さの調査
- 02データベース CPU 使用率の診断
- 03機能デプロイ後の性能確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ aj-geddes/ useful-ai-prompts --skill database-query-optimizationインストール後、Claude Code で/database-query-optimizationを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/indexing-strategy.mdoptimization-checklist.mdquery-analysis.mdquery-optimization-techniques.mdscripts/validate-schema.shtemplates/migration-template.sql詳細
データベースクエリの最適化
目次
概要
データベースクエリの遅さは、よくあるパフォーマンスのボトルネックです。インデックスの作成、効率的なクエリ、キャッシュによって最適化すると、アプリケーションのパフォーマンスが大幅に向上します。
使用する場面
- 応答時間が遅い場合
- データベースの CPU 使用率が高い場合
- パフォーマンスが低下した場合
- 新機能をデプロイする場合
- 定期的なメンテナンスを行う場合
クイックスタート
最小限の動作例:
-- Analyze query performance
EXPLAIN ANALYZE
SELECT users.id, users.name, COUNT(orders.id) as order_count
FROM users
LEFT JOIN orders ON users.id = orders.user_id
WHERE users.created_at > '2024-01-01'
GROUP BY users.id, users.name
ORDER BY order_count DESC;
-- Results show:
-- - Seq Scan (slow) vs Index Scan (fast)
-- - Rows: actual vs planned (high variance = bad)
-- - Execution time (milliseconds)
-- Key metrics:
-- - Sequential Scan: Full table read (slow)
-- - Index Scan: Uses index (fast)
-- - Nested Loop: Joins with loops
-- - Sort: In-memory or disk sort
リファレンスガイド
詳細な実装については、references/ ディレクトリを参照してください。
| ガイド | 内容 |
|---|---|
| クエリ分析 | クエリ分析 |
| インデックス戦略 | インデックス戦略 |
| クエリ最適化の手法 | クエリ最適化の手法 |
| 最適化チェックリスト | 最適化チェックリスト |
ベストプラクティス
✅ 推奨事項
- 確立されたパターンと規約に従う
- クリーンで保守しやすいコードを書く
- 適切なドキュメントを追加する
- デプロイ前に十分にテストする
❌ 禁止事項
- テストや検証を省略する
- エラー処理を無視する
- 設定値をハードコードする
コメント
Markdown 対応