postgresql-optimization について
クエリ性能や本番データベース運用に取り組む開発者と管理者向けの PostgreSQL 最適化ワークフローです。評価、クエリ調整、インデックス、設定、保守、監視を段階化し、変更時の運用上の安全策も示します。
主な機能
- 01性能とボトルネックの評価
- 02クエリと実行計画の分析
- 03インデックスの設計と確認
- 04設定項目の調整
- 05保守と監視の整理
- 06データベース変更の安全策
活用シーン
- 01遅い PostgreSQL クエリの調査
- 02ワークロードに応じたインデックス設計
- 03設定と保守計画の見直し
- 04監視を伴う本番変更の準備
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill postgresql-optimizationインストール後、Claude Code で/postgresql-optimizationを入力して読み込まれたか確認します。
詳細
PostgreSQL 最適化ワークフロー
概要
クエリのチューニング、インデックス戦略、パフォーマンス分析、VACUUM 管理、本番データベースの管理など、PostgreSQL データベースの最適化に特化したワークフローです。
このワークフローを使用する場面
次のような場合にこのワークフローを使用します。
- 遅い PostgreSQL クエリを最適化する
- インデックス戦略を設計する
- データベースのパフォーマンスを分析する
- PostgreSQL の設定をチューニングする
- 本番データベースを管理する
ワークフローのフェーズ
フェーズ 1:パフォーマンス評価
呼び出すスキル
database-optimizer- データベースの最適化postgres-best-practices- PostgreSQL のベストプラクティス
アクション
- データベースのバージョンを確認する
- 設定を確認する
- 遅いクエリを分析する
- リソースの使用状況を確認する
- ボトルネックを特定する
コピー&ペースト用プロンプト
Use @database-optimizer to assess PostgreSQL performance
フェーズ 2:クエリ分析
呼び出すスキル
sql-optimization-patterns- SQL の最適化postgres-best-practices- PostgreSQL のパターン
アクション
- EXPLAIN から始めます。EXPLAIN ANALYZE は文を実行します。書き込みやコストの高いクエリでは、本番環境で実行する前に、代表的なステージング環境のコピーを使用し、適切なタイムアウトを設定してください。本番環境で実行する場合は、必ず承認を得てください。
- スキャンの種類を特定する
- 結合戦略を確認する
- 実行時間を分析する
- 最適化の機会を見つける
コピー&ペースト用プロンプト
Use @sql-optimization-patterns to analyze and optimize queries
フェーズ 3:インデックス戦略
呼び出すスキル
database-design- インデックス設計postgresql- PostgreSQL のインデックス
アクション
- 不足しているインデックスを特定する
- B-tree インデックスを作成する
- 複合インデックスを追加する
- 部分インデックスを検討する
- インデックスの使用状況を確認する
コピー&ペースト用プロンプト
Use @database-design to design PostgreSQL indexing strategy
フェーズ 4:クエリの最適化
呼び出すスキル
sql-optimization-patterns- クエリのチューニングsql-pro- SQL の専門知識
アクション
- 非効率なクエリを書き換える
- 結合を最適化する
- 効果がある場合は CTE を追加する
- ページネーションを実装する
- 改善をテストする
コピー&ペースト用プロンプト
Use @sql-optimization-patterns to optimize SQL queries
フェーズ 5:設定のチューニング
呼び出すスキル
postgres-best-practices- 設定database-admin- データベース管理
アクション
- shared_buffers をチューニングする
- work_mem を設定する
- effective_cache_size を設定する
- チェックポイントの設定を調整する
- autovacuum を設定する
コピー&ペースト用プロンプト
Use @postgres-best-practices to tune PostgreSQL configuration
フェーズ 6:メンテナンス
呼び出すスキル
database-admin- データベースのメンテナンスpostgresql- PostgreSQL のメンテナンス
アクション
- VACUUM をスケジュールする
- ANALYZE を実行する
- テーブルの肥大化を確認する
- autovacuum を監視する
- 統計情報を確認する
コピー&ペースト用プロンプト
Use @database-admin to schedule PostgreSQL maintenance
フェーズ 7:監視
呼び出すスキル
grafana-dashboards- 監視ダッシュボードprometheus-configuration- メトリクス収集
アクション
- 監視を設定する
- ダッシュボードを作成する
- アラートを設定する
- 主要なメトリクスを追跡する
- 傾向を確認する
コピー&ペースト用プロンプト
Use @grafana-dashboards to create PostgreSQL monitoring
最適化チェックリスト
- 遅いクエリを特定済み
- インデックスを最適化済み
- 設定をチューニング済み
- メンテナンスをスケジュール済み
- 監視が稼働中
- パフォーマンスが向上済み
品質ゲート
- クエリのパフォーマンスが向上済み
- インデックスが効果的に機能
- 設定を最適化済み
- メンテナンスを自動化済み
- 監視を導入済み
関連ワークフローバンドル
database- データベース操作cloud-devops- インフラストラクチャperformance-optimization- パフォーマンス
運用上の境界
変更を加える前に、基準となるレイテンシ、行数、実行計画、ワークロードを記録し、一度に 1 つの変数だけを変更してください。インデックスの作成や設定変更は、ディスクを消費したり、ロックを取得したり、再起動が必要になったりする場合があります。事前にメンテナンス時間帯を調整し、ロールバックの手順を決めてください。無差別な手動メンテナンスではなく、通常の autovacuum の監視を優先してください。VACUUM FULL はテーブルを書き換え、ロックします。レイテンシだけでなく、結果が同等であることも検証してください。
制限事項
- このスキルは、タスクが上記のスコープに明確に一致する場合にのみ使用してください。
- 出力を、環境固有の検証、テスト、専門家によるレビューの代替として扱わないでください。
- 必要な入力、権限、安全境界、成功基準が欠けている場合は、作業を中断して確認を求めてください。
コメント
Markdown 対応