このドキュメントでは、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 アシスタントによるデータベースの負荷が高い問題のトラブルシューティングを開始します。これにより、[データベースの負荷の分析] ページが表示されます。

負荷が高いと思われる特定の部分を分析するには、グラフのその部分を拡大します。たとえば、負荷が高い領域では、CPU 使用率が 100% に近い値が表示されることがあります。ズームインするには、グラフの一部をクリックして選択します。

Query Insights ダッシュボード
次の手順に沿って、Query Insights ダッシュボードで AI 支援を使用してデータベースの負荷が高い問題のトラブルシューティングを行います。
-
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- [クエリ分析情報] をクリックして [クエリ分析情報] ダッシュボードを開きます。
- 省略可: [期間] フィルタを使用して、1 時間、6 時間、1 日、7 日、30 日、またはカスタム範囲を選択します。
- [データベースの負荷グラフ] で [データベースのパフォーマンスを分析] をクリックして、AI アシスタントを使用してデータベースの負荷が高い問題のトラブルシューティングを開始します。これにより、[データベースの負荷の分析] ページが表示されます。
![24 時間の期間のクエリ レイテンシと [データベースのパフォーマンスを分析] ボタンを示す、Query Insights グラフのデータベースの負荷グラフ。](https://cloud.google.com/static/docs/databases/images/database-load-analyze-db-performance-postgres.png?hl=ja)
クエリ実行時間別のデータベースの負荷が高い領域がグラフに表示されている場合は、その領域を拡大できます。ズームインするには、グラフの一部をクリックして選択します。
データベースの負荷が高いことを分析する
AI 支援を使用すると、データベースの負荷の詳細を分析してトラブルシューティングを行うことができます。
[データベースの負荷の分析] ページで、Cloud SQL インスタンスの次の詳細を確認できます。
- 分析期間
- CPU 使用率(p99)
- メモリ使用率(p99)
Cloud SQL に [トランザクション/秒のグラフ] が表示されます。ここでは、選択した期間のトランザクション アクティビティを確認できます。特定の期間にアクティビティが急増していないか確認できます。
分析期間
Cloud SQL は、[Query Insights] ダッシュボードまたは [インスタンスの概要] ページのデータベース負荷グラフで選択した期間のデータベースを分析します。24 時間未満の期間を選択した場合、Cloud SQL は期間全体を分析します。24 時間を超える期間を選択した場合、Cloud SQL は期間の過去 24 時間のみを分析対象として選択します。
データベースのベースライン パフォーマンス分析を計算するために、Cloud SQL は分析期間に 24 時間のベースライン期間を含めます。選択した期間が月曜日以外の日付の場合、Cloud SQL は選択した期間の24 時間前のベースライン期間を使用します。選択した期間が月曜日の場合、Cloud SQL は選択した期間の7 日前のベースライン期間を使用します。
状況
Cloud SQL が分析を開始すると、次の主要な指標で大きな変化がないか確認します。
- 秒間クエリ数(QPS)
- CPU
- メモリ
- ディスク I/O
Cloud SQL は、分析期間のパフォーマンス データ内でデータベースのベースラインの集計データを比較します。Cloud SQL が主要な指標のしきい値の大幅な変化を検出すると、データベースで発生する可能性のある状況が示されます。特定された状況は、選択した期間にデータベースの負荷が高くなる根本原因を説明している可能性があります。
たとえば、データベースで負荷が高い理由として、ロック競合が特定される場合があります。
分析中に、ロック待機率が大幅に増加していることが Cloud SQL によって判断される場合があります。Cloud SQL には、主要な指標で大幅な増加が示されている他の状況も表示されます。たとえば、次のような状況も表示されます。
- システム リソースの競合
- バッファ不足
- 過剰なロギング
根拠
状況ごとに、Cloud SQL は検出結果を裏付ける証拠のリストを表示します。Cloud SQL は、インスタンスから収集された指標に基づいて証拠を生成します。
各状況には、システム パフォーマンスの異常を検出するために使用される補足的な証拠があります。Cloud SQL は、システム パフォーマンスが特定のしきい値を超えた場合、または特定の時間制限付きの条件を満たした場合に異常を検出します。Cloud SQL では、状況ごとにこれらのしきい値または条件が定義されています。
ロック競合の状況を裏付ける証拠として、次のようなものがあります。
- ロック待機率: ベースラインの観測期間と比べると、ロック待機率が 40786.04% 増加しています。
分析中に取得された追加情報については、各状況をクリックしてください。
推奨事項
分析されたすべての状況に基づいて、Cloud SQL は、データベースの負荷が高い問題を解決するために 1 つ以上の実用的な推奨事項を提供します。Cloud SQL は、費用対効果分析とともに推奨事項を提示するため、推奨事項を実装するかどうかを十分な情報に基づいて判断できます。
分析結果に基づいて、推奨事項が得られないこともあります。
たとえば、次のような推奨事項が表示されます。
- ブロック要因を特定する: ブロックの原因となる可能性のあるクエリを特定し、最適化の余地があるかどうかを確認します。
この最初の最適化案を実装する方法については、[詳細] リンクをクリックしてください。
トラブルシューティングを続行する場合や、システムのパフォーマンスについてサポートが必要な場合は、Gemini Cloud Assist を開くこともできます。詳細については、AI アシスタンスによるモニタリングとトラブルシューティングをご覧ください。