メインコンテンツまでスキップ

AI支援トラブルシューティング

備考

ベータ版

この機能はベータ版です。ワークスペース管理者は、 プレビュー ページからこの機能へのアクセスを制御できます。Databricksのプレビューを管理するを参照してください。

遅いクエリー、スキーマ変更の失敗、または容量の問題を診断するには、通常、チェックすべきPostgresシステムビューと、正常な値と問題のある値の違いを知る必要があります。AIアシスタントによるトラブルシューティングは、その知識を代わりにGenieに集約します。Lakebaseは、問題が発生したときにそれを通知し、Postgresの専門家でなくても解決できるように支援します。ジョブとパイプラインに対するGenie ZeroOpsと同じ考え方を、Postgresデータベースにも適用します。

AIアシストによるトラブルシューティングには2つの作業方法があり、どちらもUnity Catalogに保存されている同じテレメトリーを読み取ります。知見はスケジュールに従って実行され、要求されなくても問題や早期警告を通知します。Genieとの会話を起動し、Genieが調査して提案する修正を、適用前に確認します。Genieで修正機能を使用して、知見をGenieに渡すことができます。

知見とGenieでは、起動するタイミングと提供される内容が異なります。

洞察

Genie

起動方法

自動。スケジュールに基づいてバックグラウンドで実行されます。

質問します。Genieを開いて、問題を説明します。

用途について。

影響が及ぶ前や及んだときに、問題や早期警告を発見すること。

特定の課題について、現在調査中です。

提供されるもの

重要度、平易な言葉による概要、裏付けとなる根拠、および推奨事項。

各ステップを承認し、適用前に確認する提案された修正で終了する対話型の調査。

「4つの更新をロックアウトしたアイドルセッション」という知見。これは、アイドル状態のままロックを保持していたために他のクエリーを数分間ブロックしたセッションを指しています。

「エラー率が上がったのはなぜですか?」と尋ねると、Genieは最近のスキーマ変更によって削除された列にその原因をたどります。

洞察

Genie

起動方法

自動。スケジュールに基づいてバックグラウンドで実行されます。

質問します。Genieを開いて、問題を説明します。

用途について。

影響が及ぶ前や及んだときに、問題や早期警告を発見すること。

特定の課題について、現在調査中です。

提供されるもの

重要度、平易な言葉による概要、裏付けとなる根拠、および推奨事項。

各ステップを承認し、適用前に確認する提案された修正で終了する対話型の調査。

「4つの更新をロックアウトしたアイドルセッション」という知見。これは、アイドル状態のままロックを保持していたために他のクエリーを数分間ブロックしたセッションを指しています。

「エラー率が上がったのはなぜですか?」と尋ねると、Genieは最近のスキーマ変更によって削除された列にその原因をたどります。

どちらも同じ基盤となるテレメトリを読み取り、それらの間を移動できます。例えば、知見上で Genieで修正 をクリックして、会話形式で調査を続けてください。

仕組み

Lakebase は、Postgres の診断情報を取得し、選択した Unity Catalog カタログとスキーマ内の Delta テーブルにエクスポートするマネージドエクスポーターをプロジェクト用に実行します。Genie は、何かを調査するように依頼された場合、ライブの Postgres 状態についてコンピュートに直接クエリーを実行します。

Lakebase は、経験豊富な DBA が求めるようなシグナルを捕捉し、エクスポートされると直接クエリーを実行できるいくつかのテーブルに集約します。

キャプチャ内容

着地場所。

アクティブなセッションおよび待機イベント

active_session_history, wait_event_counters

クエリープランとクエリーごとの実行統計

plan_history, pg_stat_statements_counters

スキーマの変更:変更された内容、時期、実行者

ddl_history

データベース統計:サイズ、読み取りおよび変更された行、セッション数

database_counters, database_gauges

コンピュートリソースの使用状況:CPU、メモリ、キャッシュ、接続

compute_counters, compute_gauges

失敗の原因となったエラーを含む、未加工のPostgresログメッセージ

postgres_logs

キャプチャ内容

着地場所。

アクティブなセッションおよび待機イベント

active_session_history, wait_event_counters

クエリープランとクエリーごとの実行統計

plan_history, pg_stat_statements_counters

スキーマの変更:変更された内容、時期、実行者

ddl_history

データベース統計:サイズ、読み取りおよび変更された行、セッション数

database_counters, database_gauges

コンピュートリソースの使用状況:CPU、メモリ、キャッシュ、接続

compute_counters, compute_gauges

失敗の原因となったエラーを含む、未加工のPostgresログメッセージ

postgres_logs

知見と Genie はこのデータを読み取り、データベースで実際に発生した事柄に基づいて回答を生成します。これらの各テーブルのすべての列については、「テレメトリーテーブルリファレンス」を参照してください。

このテレメトリーはUnity Catalog内のDeltaテーブルとして格納されるため、別のオブザーバビリティ製品内にロックされることなく、任意のDatabricksツールで保持、クエリー、および構築が可能です。

データの場所

生のテレメトリーはUnity Catalogに保存され、Insightsがそこから生成する知見はワークスペースフォルダーに保存されます。Lakebase UIは両方のビューです。

ここでは

そこに何がありますか?

到達方法

Postgres コンピュート

テレメトリの発生元。Genieはライブの状態で直接クエリーできます。

開くものはありません。ライブで、その場でクエリーされます。

Unity Catalog

選択したカタログとスキーマ内の、上記のDeltaテーブルとしての生のテレメトリー。

カタログエクスプローラー、または任意のDatabricks SQLツール

ワークスペースフォルダー

Insights が生成する知見は、Unity Catalog ではなくファイルとして保存されます。

設定が書き込むIDのDatabricks Workspace内。「知見で問題を見つけて解決する」を参照してください。

Lakebase UI

日々の作業場所

知見:Lakebaseのトップレベル (すべてのプロジェクト) にあるワークスペース全体のリスト、または単一プロジェクトの**モニタリング**> **知見** tab。Genie:個々のプロジェクト内から開かれます。

ここでは

そこに何がありますか?

到達方法

Postgres コンピュート

テレメトリの発生元。Genieはライブの状態で直接クエリーできます。

開くものはありません。ライブで、その場でクエリーされます。

Unity Catalog

選択したカタログとスキーマ内の、上記のDeltaテーブルとしての生のテレメトリー。

カタログエクスプローラー、または任意のDatabricks SQLツール

ワークスペースフォルダー

Insights が生成する知見は、Unity Catalog ではなくファイルとして保存されます。

設定が書き込むIDのDatabricks Workspace内。「知見で問題を見つけて解決する」を参照してください。

Lakebase UI

日々の作業場所

知見:Lakebaseのトップレベル (すべてのプロジェクト) にあるワークスペース全体のリスト、または単一プロジェクトの**モニタリング**> **知見** tab。Genie:個々のプロジェクト内から開かれます。

前提条件

  • Lakebaseオートスケールプロジェクト。「Postgresデータベースの取得」を参照してください。
  • テレメトリーを受信するUnity Catalogカタログとスキーマ。エクスポート先としてサポートされていない Default ストレージ を使用するカタログまたはスキーマは選択しないでください。
  • 実行中のコンピュート。ゼロへのスケールによって中断されたコンピュートは、クエリーが起動するまでテレメトリを送信しません。
  • テレメトリのエクスポートを実行するID に関する決定。LakebaseはこのIDとしてUnity Catalogにテレメトリを書き込むため、エクスポートが書き込み可能な宛先カタログとスキーマ、および知見のワークスペースフォルダーが保存される場所を決定します。事前に選択してください。共有Service Principalが永続的な選択肢です;自身のユーザー資格情報はテストにはより迅速です。Lakehouseへのテレメトリのキャプチャを参照してください。
注記

このワークフローを構成する機能(Unity Catalogへのテレメトリーエクスポート、知見、Genieトラブルシューティング)は、AWSおよびAzureで利用可能です。

可観測性を設定する

知見とGenieの両方は、プロジェクトのテレメトリをUnity Catalogに送信する**オブザーバビリティ設定**に依存します。どちらかを使用する前に、1つ作成してください。単一の設定を複数のプロジェクトで共有でき、これは知見を有効にするものでもあります。

Lakehouseへのテレメトリの取り込みを参照してください。

制限事項

警告

アプリケーション接続用のロールを作成する場合、未加工のパスワードではなく、SCRAM認証パスワードを使用してください。これにより、資格情報がLogsに残る可能性を低減します。

ベータ期間中は、次の制限が適用されます:

  • AWSとAzureで利用可能です。

  • COPY 操作は現在、クエリープラン履歴にキャプチャされません。

  • PL/pgSQL関数またはプロシージャ内で実行されたクエリーは、トップレベルのステートメントとして実行されない限り、クエリーレベルのテレメトリにはキャプチャされません。Postgresのステートメント追跡機能は、defaultではトップレベルのステートメントのみをカウントします。

  • BranchやEndpointは、エクスポートされたテレメトリーや知見に、内部ID(例: br-odd-mud-y2icrn1h)で表示され、「本番運用」のような表示名では表示されません。知見またはテーブル行がどのBranchまたはEndpointを参照しているか確認する必要がある場合は、Lakebase UIでIDを相互参照してください。

  • テレメトリの取り込みを有効にするGUCは、既存のコンピュートに自動的に伝播しない場合があります。可観測性を設定した後もテレメトリが表示されない場合は、プロジェクトに接続して確認してください。

    SQL
    SHOW neon_monitor.log_capture_enabled;
    SHOW databricks.o11y_exporter_enabled;

    どちらもonを返す必要があります。どちらかがoffを返す場合は、コンピュートEndpointを再起動します。

次のステップ