このドキュメントでは、AI アシスタンスを使用して Spanner リソースのモニタリングとトラブルシューティングを行う方法について説明します。Spanner と Gemini Cloud Assist の AI アシスタントによるトラブルシューティング ツールを使用して、 データベースの負荷が高い問題をトラブルシューティングできます。
始める前に
ユーザー アカウントとプロジェクト用に Gemini Cloud Assist を設定します Google Cloud 。
Gemini Cloud Assist を設定すると、サービスが反映されるまでに最大 5 分かかります。反映が完了するまで待ってから、Spanner で AI アシスタントによるトラブルシューティングを有効にしてください。
必要なロール
AI アシスタントによるトラブルシューティングを使用するために必要な権限を取得するには、Spanner データベースに対する次の IAM ロールを付与するよう管理者に依頼してください。
-
Cloud Spanner データベース ユーザー (
roles/spanner.databaseUser) -
データベース分析情報閲覧者 (
roles/databaseinsights.viewer) -
Gemini Cloud Assist 調査オーナー (
roles/geminicloudassist.investigationOwner)
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタム ロールや他の事前定義 ロールから取得することもできます。
Gemini Cloud Assist を開く
コンソールで、[Spanner インスタンス] ページに移動します。 Google Cloud
インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
Gemini を開くには、spark [Gemini Cloud Assist チャットを開く、または閉じる] をクリックします。
Gemini Cloud Assist ペインで、目的の情報を表すプロンプトを入力します。
プロンプトを入力したら、 [Send prompt] をクリックします。Gemini は、過去 1 時間の情報に基づいてプロンプトに応答します。
データベースの負荷が高い問題をトラブルシューティングする
コンソールの [Query Insights] ダッシュボードまたは [System Insights] ダッシュボードを利用すると、システムでデータベースの負荷が平均よりも高い場合に、データベースを分析し、イベントのトラブルシューティングを行うことができます。 Google Cloud Spanner では、選択した期間の 24 時間前のデータを基に、データベースの予想負荷が算出されます。負荷イベントの増加の原因を調べ、パフォーマンス低下の原因を分析できます。 また、Spanner では、データベースを最適化してパフォーマンスを高めるための推奨事項も提供されます。
データベースの負荷が高い場合のトラブルシューティングに AI アシスタンス機能を使用するには、 コンソールの [System Insights] ダッシュボードまたは [Query Insights] ダッシュボードに 移動します。 Google Cloud
Query Insights ダッシュボード
次の手順に沿って、[Query Insights] ダッシュボードで AI アシスタンス機能を使用してデータベースの負荷が高い問題のトラブルシューティングを行います。
コンソールで、[Spanner インスタンス] ページに移動します。 Google Cloud
インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
省略可: [データベース] リストで、データベースをクリックします。
ナビゲーション メニューで [Query Insights] をクリックします。
省略可: [期間] フィルタを使用して、1 時間、6 時間、1 日、7 日、30 日、またはカスタム範囲を選択します。
負荷が高いと思われる特定の箇所のデータを見るには、グラフのその部分を拡大します。たとえば、負荷が高い箇所では、CPU 使用率が 100% に近い値で示されている可能性があります。 拡大表示するには、グラフの一部をクリックして選択します。
[合計 CPU 使用率(すべてのクエリ)] グラフで、 [パフォーマンスを調査] ボタンをクリックして、 Gemini Cloud Assist の AI アシスタントによるレイテンシのトラブルシューティングを開始します。
約 2 分後に、[調査の詳細] ペインが開き、次のセクションが表示されます。
- 問題 。調査対象の問題の説明。調査の開始時刻と終了時刻が含まれます。
- 確認内容 。問題に関する確認内容のリスト。たとえば、クエリのロック待機時間の比率が予想よりも長いなど、ロック競合の詳細が含まれます。
- 仮説 。実行速度の遅いクエリに対処するために推奨される AI アクションのリスト。
システム分析情報ダッシュボード
次の手順に沿って、[System Insights] ダッシュボードで AI アシスタンス機能を使用してデータベースの負荷が高い問題のトラブルシューティングを行います。
コンソールで、[Spanner インスタンス] ページに移動します。 Google Cloud
インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
省略可: [データベース] で、データベースをクリックします。
ナビゲーション メニューで [システム分析情報] をクリックします。
省略可: [期間] フィルタを使用して、1 時間、6 時間、1 日、7 日、30 日、またはカスタム範囲を選択します。
負荷が高いと思われる特定の箇所のデータを見るには、グラフのその部分を拡大します。たとえば、負荷が高い箇所では、CPU 使用率が 100% に近い値で示されている可能性があります。 拡大表示するには、グラフの一部をクリックして選択します。
[Explore Investigations] ボタンをクリックして、 Gemini Cloud Assist の AI アシスタントによるデータベース負荷のトラブルシューティングを開始します。
約 2 分後に、[調査の詳細] ペインが開き、次のセクションが表示されます。
- 問題 。調査対象の問題の説明。調査の開始時刻と終了時刻が含まれます。
- 確認内容 。問題に関する確認内容のリスト。たとえば、クエリのロック待機時間の比率が予想よりも長いなど、ロック競合の詳細が含まれます。
- 仮説 。実行速度の遅いクエリに対処するために推奨される AI アクションのリスト。
高いデータベース負荷について分析する
AI アシスタント機能を使用すると、データベースの負荷について詳しく分析し、トラブルシューティングを行うことができます。
分析期間
Spanner では、[Query Insights] ダッシュボードまたは [System Insights] ダッシュボードのデータベース負荷グラフで選択した期間に基づいて、データベースが分析されます。24 時間未満の期間を選択した場合は、その期間全体が分析されます。 24 時間を超える期間を選択した場合は、直近の 24 時間のみが分析対象となります。
データベースのベースライン パフォーマンス分析の計算を行うために、分析期間には 24 時間のベースライン期間が含まれます。 選択した期間が月曜日以外の曜日である場合、選択した期間の直前 24 時間がベースラインとして使用されます。 選択した期間が月曜日の場合は、選択した期間の 7 日前がベースラインとして使用されます。
指標分析
Spanner で分析を開始すると、次の指標を含むさまざまな指標に大幅な変化がないかどうかが確認されます。
- CPU 使用率
- 読み取りと書き込みのレイテンシ、P50 と P99
- 1 秒あたりの読み取りクエリ数と書き込みクエリ数(QPS)
- ノード数
- セッション指標
- ロック待機時間
- トランザクションの中止数
- クエリの統計情報
- トランザクションの統計情報
- ロックの統計情報
- スプリットの統計情報
Spanner では、分析期間におけるパフォーマンス データ内のデータベースのベースライン集計データが比較されます。主要な指標のしきい値の大幅な変化が検出されると、データベースで発生するおそれのある状況が示されます。特定された状況は、選択した期間においてデータベースの負荷が高くなっている原因を説明している可能性があります。
推奨事項
Gemini Cloud Assist による分析が完了すると、[調査の詳細] ペインの [仮説] セクションに、問題の解決に役立つ実用的な分析情報が表示されます。
状況によっては、分析に基づいて推奨事項が表示されない場合があります。
次のステップ
- Gemini アシスタンスを使用して SQL を記述する。
- レイテンシ指標について理解する。
- 高い CPU 使用率について調査する。
- パフォーマンスの概要。
- システム分析情報を使用してインスタンスをモニタリングする。