• 分析
  • 検証
  • 最適化
  • 手動操作

AIを活用してGraphQLクエリのパフォーマンスをデバッグする方法

Hasuraをエージェントに接続して、低速なクエリを特定しましょう。背後にあるSQL実行プランを解析し、根本的な原因を突き止めます。

このページについてAIに聞く

すぐに答え

AIを使って低速なGraphQLクエリを見つけるには?

エージェントがHasuraを使用して特定のクエリを実行し、そのSQL実行プランを取得します。次に、そのプランを分析して、インデックスの不足や非効率な結合を特定します。データベースのどこに負荷がかかっているのか、明確な内訳を提示します。

分析結果

パフォーマンスデータの出力内容

AIがHasuraのデータを処理し、以下の具体的な結果を生成します。

分析

実行プランの洞察

エージェントがexplain_graphqlを使用してSQLプランを取得します。クエリが遅い理由を、分かりやすい言葉で説明します。

検証

クエリテスト結果

エージェントがexecute_graphqlを実行し、修正案が実際に機能するか検証します。Hasuraエンジンからのリアルタイムなレスポンスを確認できます。

最適化

インデックスの推奨

実行プラン内のスキャンタイプを確認し、フルテーブルスキャンを防ぐためにどのカラムに新しいインデックスが必要かをエージェントが提案します。

手動操作

スキーマの変更

AIは問題を特定しますが、実際のSQLマイグレーションやインデックスの適用はユーザー自身が行う必要があります。エージェントがデータベースのスキーマを直接変更することはありません。

ワークフロー

低速なクエリが報告された際、AIが行うこと

エージェントは、対象となるクエリの特定からデータベースの挙動解析へと進みます。

  1. クエリの取得

    エージェントが対象のGraphQLクエリを取得し、その構造を把握します。

    execute_graphql
  2. 実行プランの調査

    Hasuraに対して背後のSQL実行プランを要求し、データベースがリクエストをどのように処理しているかを確認します。

    explain_graphql
  3. ボトルネックの特定

    クエリの構造と実行プランを照らし合わせ、低速な結合やインデックスのないスキャンを特定します。

    explain_graphql
  4. 修正の検証

    修正案を提示した後、エージェントが再度クエリを実行してパフォーマンスが改善されたかを確認します。

    execute_graphql

試してみる

以下のプロンプトをコピーして開始できます。

これらのプロンプトを使ってデバッグを開始しましょう。

出発点

括弧内のテキストを、実際のGraphQLクエリやテーブル名に書き換えてください。

Hasura Connector

準備完了です。MCPクライアントを選択し、セットアップ手順に従ってください。

コネクタリンクhttps://edge.vinkius.com/vk_preview_Q19k5WrSMOV2zDZs6DlIbmRJGyWfSnbLHJlhJLmt/mcp

Claude Desktop

以下の手順で数秒で接続できます。

  1. 1In Claude Desktop, open Settings → Connectors.
  2. 2Click “Add custom connector” and paste the connector link above as the remote MCP server URL.
  3. 3Click Add and start a new chat — Hasura capabilities are ready to use.
設定 · claude_desktop_config.jsonコピー
{
  "mcpServers": {
    "hasura-instant-graphql-rest-engine-mcp": {
      "url": "https://edge.vinkius.com/vk_preview_Q19k5WrSMOV2zDZs6DlIbmRJGyWfSnbLHJlhJLmt/mcp"
    }
  }
}
チャットにコピー04
  • GraphQLクエリ {query} を実行し、なぜ低速である可能性があるか説明してください。

  • このクエリの実行プランを取得してください: {query}

  • users テーブルのクエリの実行プランを分析し、インデックスの不足がないか確認してください。

  • インデックスの変更を提案した前後で、このクエリ {query} のパフォーマンスを比較してください。

  • Claude
  • ChatGPT
  • Cursor
  • VS Code
  • Windsurf
  • Claude Code
  • JetBrains
  • Cline

ここから始める

Hasuraを一度接続すれば、あとは聞くだけです

Hasuraのエンドポイントを入力するだけです。認証情報は暗号化され、すぐにエージェントによるデバッグを開始できます。

HasuraをAIに接続する

FAQ

動作に関する詳細

  • 01

    AIはデータベースのスキーマを変更できますか?

    いいえ。エージェントができるのはデータの読み取りと実行プランの解析のみです。実際のマイグレーションはユーザー自身で行う必要があります。

  • 02

    AIはHasura内のデータを削除しますか?

    いいえ。提供されているツールはクエリの実行とプランの解析用であり、データの削除やテーブルのドロップを行う機能は含まれていません。

  • 03

    低速なクエリを自動的に見つけてくれますか?

    いいえ。エージェントが何を分析すべきか判断するために、調査対象の特定のクエリまたはテーブルを指定する必要があります。

  • 04

    低速な結合(join)を修正してくれますか?

    結合が低速であることを特定し、修正案を提示することはできますが、データベースを書き換えたりインデックスを自動で追加したりすることはできません。

  • 05

    クエリが遅い理由をどうやって判断するのですか?

    explain_graphql ツールを使用してSQL実行プランを確認します。これにより、データベースエンジンがリクエストを実際にどのように処理しているかを把握できます。

  • Hasuraに関するその他の質問 Hasura Connectorの全機能を見る

『Hasura』を Claude、Cursor、ChatGPT などに接続