このドキュメントでは、Cloud SQL の AI アシスタントを使用して、Cloud SQL でのデータベースの負荷が高い場合のトラブルシューティングを行う方法について説明します。Cloud SQL と Gemini Cloud Assist の AI アシスタント機能を使用して、調査、分析、推奨事項の取得を行い、最終的に推奨事項を実装して Cloud SQL のクエリを最適化できます。
Google Cloud コンソールの [クエリ分析情報] ダッシュボードにアクセスすると、データベースを分析し、システムでデータベースの負荷が平均よりも高い場合にイベントのトラブルシューティングを行うことができます。Cloud SQL では、選択した期間の 24 時間前のデータを基に、データベースの予想負荷が算出されます。負荷イベントの増加の原因を調べ、パフォーマンス低下の原因を分析できます。最後に、Cloud SQL は、データベースを最適化してパフォーマンスを高めるための推奨事項を提供します。
始める前に
AI アシスタンス機能を使用してデータベースの負荷が高い問題のトラブルシューティングを行うには、次の操作を行います。
必要なロールと権限
AI アシスタンスを使用してデータベースの負荷が高い問題をトラブルシューティングするために必要なロールと権限については、AI によるモニタリングとトラブルシューティングをご覧ください。
AI アシスタンスを使用する
データベースの負荷が高い場合のトラブルシューティングに AI アシスタントを使用するには、 Google Cloud コンソールの [インスタンスの概要] ページまたは [クエリ分析情報] ダッシュボードに移動します。
インスタンスの概要ページ
次の手順に沿って、[インスタンスの概要] ページで AI アシスタンス機能を使用してデータベースの負荷が高い問題のトラブルシューティングを行います。
-
Google Cloud コンソールで、[Cloud SQL インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- [概要] ページの [グラフ] メニューで、データベースの指標を選択します。任意の指標を選択できます。
- 省略可: 特定の分析期間を選択するには、[期間] フィルタを使用して、1 時間、6 時間、1 日、7 日、30 日、またはカスタム範囲を選択します。
- [インスタンスのパフォーマンスを分析] をクリックして、データベース負荷が高い問題についての AI アシスタント機能を使ったトラブルシューティングを開始します。これにより、[Analyzing database load] ページが生成されます。

負荷が高いと思われる特定の箇所のデータを見るには、グラフのその部分を拡大します。たとえば、負荷が高い箇所では、CPU 使用率が 100% に近い値で示されている可能性があります。拡大表示するには、グラフの一部をクリックして選択します。

Query Insights ダッシュボード
次の手順に沿って、[Query Insights] ダッシュボードで AI アシスタンス機能を使用してデータベースの負荷が高い問題のトラブルシューティングを行います。
-
Google Cloud コンソールで、[Cloud SQL インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- [Query Insights] をクリックして [Query Insights] ダッシュボードを開きます。
- 省略可: [期間] フィルタを使用して、1 時間、6 時間、1 日、7 日、30 日、またはカスタム範囲を選択します。
- [Database load chart] で [Analyze instance performance] をクリックして、データベース負荷についての AI アシスタント機能を使ったトラブルシューティングを開始します。これにより、[Analyzing database load] ページが生成されます。

クエリ実行時間別のデータベース負荷が高いと思われる特定の箇所のデータを見るには、グラフのその部分を拡大します。拡大表示するには、グラフの一部をクリックして選択します。
高いデータベース負荷について分析する
AI アシスタント機能を使うと、データベースの負荷について詳しく分析し、トラブルシューティングを行うことができます。
[データベースの負荷の分析] ページで、Cloud SQL インスタンスの次の詳細を確認できます。
- 分析期間
- CPU 使用率(p99)
- メモリ使用率(p99)
Cloud SQL に [MySQL クエリ] グラフが表示されます。このグラフでは、選択した期間のクエリ アクティビティを確認できます。特定の期間にアクティビティが急増していないか確認できます。
分析期間
Cloud SQL では、[Query Insights] ダッシュボードまたは [インスタンスの概要] ページのデータベース負荷グラフで選択した期間に基づいて、データベースが分析されます。24 時間未満の期間を選択した場合は、その期間全体が分析されます。24 時間を超える期間を選択した場合は、直近の 24 時間のみが分析対象となります。
データベースのベースライン パフォーマンス分析を計算するために、Cloud SQL は分析期間に 24 時間のベースライン期間を含めます。選択した期間が月曜日以外の曜日である場合、選択した期間の直前 24 時間がベースラインとして使用されます。選択した期間が月曜日の場合は、選択した期間の 7 日前がベースラインとして使用されます。
状況
Cloud SQL で分析を開始すると、次の主要指標に大幅な変化がないかどうかが確認されます。
- 秒間クエリ数(QPS)
- CPU
- メモリ
- ディスク I/O
Cloud SQL は、分析期間のパフォーマンス データ内のデータベースのベースラインの集計データを比較します。主要な指標のしきい値の大幅な変化が検出されると、データベースで発生するおそれのある状況が示されます。特定された状況は、選択した期間においてデータベースの負荷が高くなっている根本原因を説明している可能性があります。
たとえば、データベースで負荷が高い理由として、次のような状況が複数検出される場合があります。
- スレッドの同時実行が多い
- CPU 使用率の大幅な変化
- ディスク IOPS の大幅な変化
- QPS の大幅な変化
根拠
状況ごとに、Cloud SQL は検出結果を裏付ける証拠のリストを表示します。Cloud SQL は、インスタンスから収集された指標に基づいて証拠を生成します。
各状況には、システム パフォーマンスの異常を検出するために使用される補足的な根拠があります。Cloud SQL は、システム パフォーマンスが特定のしきい値を超えた場合、または特定の時間制限付きの条件を満たした場合に異常を検出します。Cloud SQL では、状況ごとにこれらのしきい値または条件が定義されています。
主な指標の大幅な変化が検出された状況を裏付ける証拠として、次のようなものがあります。
- 合計 QPS: 平均が 18,534.22 から 37,619.86 に、p20 が 3.55 から 5.45 に、p80 が 5.62 から 112,050.8 に変化しました。
- 読み取り QPS: 平均が 1,802.98 から 3,657.93 に、p20 が 1.17 から 2.1 に、p80 が 2.12 から 10,908.8 に変化しました。
- 書き込み QPS: 平均が 1,751.61 から 3,553.48 に、p20 が 0.2 から 0.2 に、p80 が 0.2 から 10,600.13 に変化しました。
- CPU 使用率の変化: CPU 使用率が大きく変化しています。平均が 183.85% 変化しました。p80 が 2,630.49% 変化しました。p20 が 6.75% 変化しました。
- ディスク IOPS: ディスク IOPS が大きく変化しています。平均が 173.39% 変化しました。p80 が 20,832.44% 変化しました。p20 が 1.88% 変化しました。
- 実行中のスレッド: 実行中のスレッド数が 3,166.67% 増加しています。
分析中に取得された証拠を表示するには、各状況をクリックします。証拠は、対応する状況の横のペインに表示されます。
推奨事項
分析されたすべての状況に基づいて、Cloud SQL は、データベースの負荷が高い問題を解決するために 1 つ以上の実用的な推奨事項を提供します。Cloud SQL は、費用対効果分析とともに推奨事項を提示するため、推奨事項を実装するかどうかを十分な情報に基づいて判断できます。
場合によっては、分析結果に基づいた推奨事項が得られないこともあります。
たとえば、次のような推奨事項が表示されます。
同時実行ワークロードを確認する: Query Insights を使用して、過去と現在のワークロードを分析します。
- CPU 使用率が上昇した場合は、リソースを最も多く消費するクエリに注目して、潜在的な非効率性を特定します。
- CPU 使用率が低下した場合は、待機イベントを確認して、競合の可能性を特定します。
IO 関連のデータベース フラグを確認する: データベース フラグを変更すると、ディスク IOPS が変動する可能性があります。
IOPS に影響する可能性がある主なフラグには、次のようなものがあります(ただしこれらに限定されません)。
innodb_buffer_pool_size
innodb_redo_log_capacity
innodb_io_capacity
innodb_flush_neighbors
innodb_lru_scan_depth
temptable_max_ram
これらの設定を確認することで、IO の変動の潜在的な原因を特定できる場合があります。
その他の IO 指標を確認する: IOPS の変動をより深く理解するには、次の システム分析情報指標を分析します。
Disk read/write operations
Read/write InnoDB pages
また、Metrics Explorer で他の InnoDB I/O 指標を確認します。
Gemini Cloud Assist でも、トラブルシューティングを続行するヒントやシステムのパフォーマンスについてのサポートが得られます。詳細については、AI アシスタンスによるモニタリングとトラブルシューティングをご覧ください。