Query Insights でインデックス アドバイザーを使用する

このページでは、Cloud SQL Enterprise Plus エディションの Query Insights で Cloud SQL for SQL Server インデックス アドバイザーを使用する方法について説明します。

Cloud SQL Enterprise Plus エディションの Query Insights でインデックス アドバイザーを使用すると、インデックス アドバイザーの推奨事項を表示し、推奨されたインデックスを作成してクエリのパフォーマンスを向上させることができます。インデックス アドバイザーについて詳しくは、インデックス アドバイザーの概要をご覧ください。

始める前に

  1. Cloud SQL for SQL Server 2019 以降を使用していることを確認します。
  2. Cloud SQL Enterprise Plus エディションのクエリ分析情報を有効にする
  3. 次の権限を持つカスタムロールを作成します。次に、クエリ分析情報を使用する必要がある各ユーザー アカウントにロールを付与します。
タスク ロール 権限
推奨事項を表示する databaseinsights.viewer databaseinsights.recommendations.query
databaseinsights.resourceRecommendations.query
推奨事項を表示する cloudsql.viewer 該当なし

インデックス アドバイザーの推奨事項を表示、フィルタする

  1. Google Cloud コンソールで、[Cloud SQL インスタンス] ページに移動します。

    Cloud SQL の [インスタンス] に移動

  2. インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
  3. [Query Insights] をクリックします。
  4. [有効にする] をクリックします。インデックス アドバイザーの推奨事項は、[データベースの負荷別の上位項目] セクションの [クエリ] タブの [推奨事項] 列に表示されます。
  5. (省略可)CREATE INDEX の推奨事項を含むクエリのみを表示するには、[推奨事項: インデックスの作成] のフィルタを追加します。

クエリの推奨事項を表示する

特定のクエリのインデックス推奨の詳細を表示する手順は次のとおりです。

  1. Google Cloud コンソールで、[Cloud SQL インスタンス] ページに移動します。

    Cloud SQL の [インスタンス] に移動

  2. インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
  3. [Query Insights] をクリックします。
  4. [上位のクエリとタグ] セクションで、[クエリ] をクリックします。
  5. クエリに関する推奨事項の詳細を確認するには、次のいずれかを行います。
    • クエリをクリックして、選択したクエリの推奨事項の詳細を確認します。これには以下の情報が含まれます。
      • パフォーマンスへの影響(高、中、低): 推奨されるすべてのインデックスが作成された後の推定クエリ速度。
      • 推奨事項: インデックスの推奨事項を作成します。
      • 影響を受けるテーブル: インデックスの作成時に影響を受けるテーブルの数。
      • 推定される必要な追加ストレージ サイズ: 推奨されるインデックスをすべて作成するために必要な推定ストレージ サイズ。
      • 影響を受けるクエリの数: インデックスの推奨事項の影響を受けるワークロードのクエリの合計数。単一のインデックスが複数のクエリにメリットをもたらす場合もあります。
    • 特定のクエリの [インデックスの作成] をクリックすると、クエリのパフォーマンスを改善するためのインデックスの作成に関する詳細な推奨事項を確認できます。

影響を受けるクエリを表示する

  1. Google Cloud コンソールで、[Cloud SQL インスタンス] ページに移動します。

    Cloud SQL の [インスタンス] に移動

  2. インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
  3. [Query Insights] をクリックします。
  4. [データベースの負荷別の上位項目] テーブルで、[クエリ] をクリックします。
  5. 特定のクエリの [インデックスの作成] をクリックします。
  6. [影響を受けるクエリを表示] をクリックします。
  7. クエリをクリックして、影響を受けるクエリの詳細を確認します。
  1. Google Cloud コンソールで、[Cloud SQL インスタンス] ページに移動します。

    Cloud SQL の [インスタンス] に移動

  2. インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
  3. [Query Insights] をクリックします。
  4. [データベースの負荷別の上位項目] テーブルで、[クエリ] をクリックします。
  5. 特定のクエリの [インデックスの作成] をクリックします。
  6. [すべての index コマンドをコピー] をクリックします。CREATE INDEX コマンドがクリップボードにコピーされます。
  7. コマンドラインでプライマリ インスタンスに接続します。
  8. 推奨されたインデックスを作成するには、クリップボードにコピーされたコマンドを実行します。以下はその例です。

    CREATE INDEX ON "public"."demo_order" ("customer_id");

次のステップ