mcpField
D
database-designer

database-designer

github.com/borgheiデータ・データベース1.0k166 回インストール1 週間前に更新
リポジトリ

database-designer について

データベース設計者やエンジニア向けに、SQLスキーマ分析、インデックス最適化、ロールバック手順付きの移行スクリプト生成を行うスキルです。Mermaid ERDの生成、ゼロダウンタイムの拡張・縮小移行、データベース選定も支援します。

主な機能

  1. 01正規化、制約、データ型の確認
  2. 02関係定義からMermaid ERDを生成
  3. 03クエリパターンに応じたインデックス最適化と確認
  4. 04前進・ロールバック用移行スクリプトの生成
  5. 05ゼロダウンタイムの拡張・縮小移行の計画
  6. 06データベース選定の指針

活用シーン

  1. 01新しいデータベーススキーマのレビュー
  2. 02クエリパターンに応じたインデックスの最適化・整理
  3. 03検証手順を含む安全な移行の計画
  4. 04ワークロードに合うデータベース技術の選定

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/borghei/claude-skills --skill database-designer

インストール後、Claude Code で/database-designerを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

index_optimizer.py
migration_generator.py
README.md
schema_analyzer.py
assets/
sample_query_patterns.json
sample_schema.json
sample_schema.sql
expected_outputs/
index_optimization_sample.txt
migration_sample.txt
schema_analysis_sample.txt
references/
database_selection_decision_tree.md
index_strategy_patterns.md
normalization_guide.md
patterns-and-troubleshooting.md
workflows-and-tools.md

詳細

データベース設計

エージェントは SQL スキーマを分析して正規化への準拠状況を確認し、クエリパターンに基づいて最適なインデックスを推奨し、ロールバック手順を含む安全なマイグレーションスクリプトを生成します。Mermaid ERD を作成し、冗長なインデックスを検出するとともに、PostgreSQL と MySQL 向けにダウンタイムなしの expand-contract マイグレーションパターンを実装します。

主な機能

  • スキーマ分析 — DDL または JSON から、正規化違反(1NF-BCNF)、不足している制約、命名上の問題、データ型の問題を検出します。
  • ERD の生成 — 宣言されたリレーションシップから、有効な Mermaid エンティティ・リレーションシップ図を生成します。
  • インデックスの最適化 — クエリパターンからインデックスを推奨し、複合インデックスの列を選択性の高い順に並べ、冗長または重複するインデックスを検出し、カバリングインデックスの機会を見つけます。
  • マイグレーションの生成 — スキーマバージョン間の前進用およびロールバック用 SQL を、検証クエリとともに生成します。
  • ダウンタイムなしのマイグレーション — 1,000 万行を超えるテーブル向けに、安全なバックフィルを伴う expand-contract パターンを使用します。
  • データベース選択のガイダンス — ワークロードの要件に基づいて、PostgreSQL、MySQL、MongoDB、DynamoDB を選定します。

使用する場面

  • 正規化と制約を考慮して、新しいスキーマを設計またはレビューする場合。
  • インデックスの推奨や削除によって、クエリを最適化する場合。
  • スキーマバージョン間の安全な(必要に応じてダウンタイムなしの)マイグレーションを計画する場合。
  • データベースのパフォーマンスとリレーションシップ構造(ERD)を分析する場合。
  • ワークロードに適したデータベース技術を選定する場合。

まず確認すること

設計またはマイグレーションを始める前に、以下の入力を確認してください。不明または曖昧な点があれば、推測せずに質問してください。

  • タスク — スキーマ分析/ERD、インデックスの最適化、またはマイグレーションの生成(schema_analyzer.py、index_optimizer.py、migration_generator.py のどれを使用するかを決定します)
  • エンジン — PostgreSQL、MySQL、MongoDB、または DynamoDB(DDL の方言と選択ガイダンスに影響します)
  • スキーマ入力とクエリパターン — DDL/JSON スキーマと最適化対象のクエリ(ツールが分析する入力であり、インデックスの推奨内容はクエリパターンによって異なります)

停止ルール:出力に最も影響する 2~3 項目だけを尋ねてください。ユーザーが「まずは草案を作って」と言った場合は、そのまま進め、成果物の冒頭に前提を記載してください。

参考資料

タスクに合った参考資料を読み込んでください。このファイルは簡潔に保ち、必要に応じて詳細を参照します。

  • references/workflows-and-tools.md — クイックスタート、3 つの主要ワークフロー(分析/最適化、安全なマイグレーション、インデックスの最適化)、および schema_analyzer.py、index_optimizer.py、migration_generator.py の CLI リファレンス全体(フラグ、使用方法、出力形式)。ツールを最初から最後まで実行する場合に読みます。
  • references/patterns-and-troubleshooting.md — インデックス種別の選択表、アンチパターン、ツール出力のトラブルシューティング表、成功基準となる品質基準。インデックス種別の選定、ミスの回避、出力のデバッグ、作業の確認時に読みます。
  • references/database_selection_decision_tree.md — 要件、データパターン、運用上の制約に基づいて、データベース技術を体系的に選定します。SQL エンジンと NoSQL エンジンのどちらを選ぶか検討する場合に読みます。
  • references/index_strategy_patterns.md — インデックス設計の実証済みパターン、最適化戦略、回避すべき落とし穴。インデックス戦略を詳しく設計する場合に読みます。
  • references/normalization_guide.md — 正規形(1NF-BCNF)、異常を排除するための分解、整合性とのトレードオフ。スキーマを正規化する場合、または意図的に非正規化する場合に読みます。

対象範囲と制限事項

対象範囲:

  • 正規化、制約、命名、データ型を含む、SQL データベース(PostgreSQL、MySQL)のスキーマ設計分析
  • 選択性の推定、複合インデックスの順序、カバリングインデックス、冗長性の検出によるインデックスの最適化
  • フォワード/ロールバック用スクリプト、ダウンタイムゼロのパターン、検証クエリを含むマイグレーションの生成
  • DDL または JSON スキーマ定義からの Mermaid 形式の ERD 生成

対象外:

  • 実行時のクエリパフォーマンス監視や稼働中のデータベースプロファイリング(performance-profiler スキルを参照)
  • MongoDB、DynamoDB、Cassandra 向けの NoSQL 固有のスキーマ設計(参考セクションでは概念的なガイダンスのみ)
  • バックアップ/復元、レプリケーションの設定、ユーザー/ロール管理などのデータベース管理タスク
  • アプリケーションレベルの ORM 設定、コネクションプールの調整、ドライバー固有の最適化(ORM に関連するパターンについては database-schema-designer を参照)

統合ポイント

スキル統合内容データフロー
migration-architect大規模なスキーマ変更のマイグレーション戦略と実行計画Database Designer がマイグレーション SQL を生成し、Migration Architect が複数サービスにわたるデプロイ順序とロールバックの調整を統括します
database-schema-designerアプリケーション層のパターンに重点を置いた、補完的なスキーマ設計Database Designer が正規化を分析し、Schema Designer が ORM マッピングとアプリケーションモデリングの規約を適用します
performance-profilerインデックスとスキーマの最適化に関する推奨事項の実行時検証Database Designer が推奨インデックスを出力し、Performance Profiler が EXPLAIN ANALYZE を使って実際のクエリプランの改善を測定します
api-design-reviewerデータベーススキーマと API リソース契約の整合性Database Designer がテーブル構造を定義し、API Design Reviewer がエンドポイントのスキーマと基盤となるデータモデルの一致を検証します
ci-cd-pipeline-builderデプロイパイプラインでのマイグレーションの自動実行Database Designer がマイグレーションスクリプトを生成し、CI/CD Pipeline Builder が検証ゲートを設けてデプロイステージに組み込みます
observability-designer最適化後のデータベースパフォーマンス監視とアラートDatabase Designer がクエリパターンを特定し、Observability Designer が低速クエリアラートとインデックス使用状況ダッシュボードを設定します

コメント