Genieを使用して問題を診断し、修正する
ベータ版
この機能はベータ版です。ワークスペース管理者は、 プレビュー ページからこの機能へのアクセスを制御できます。Databricksのプレビューを管理するを参照してください。
Lakebase UIでは、Genieがデータベースを診断して修正します。ユーザーは、独自の言葉で特定の質問をします。Genieは、知見と同じテレメトリー、つまりライブPostgresステート、クエリープラン、待機イベント、DDL、およびスキーマ変更履歴を使用して調査します。これは、Lakehouseおよびアプリ全体で使用するのと同じGenieです。ここでは、Lakebaseプロジェクトで機能します。
Genieは段階的な会話形式で動作します。その推論を示し、調査中に実行するクエリーを含む各アクションの承認を求めます。データベースの変更を含むすべての修正には、適用される前に明示的な確認が必要です。
このページでは、一般的な本番運用インシデント (アプリケーションが引き続きクエリーする列を削除するデプロイ) を例に、Genieにヘルプを求めることがエンドツーエンドでどのように行われるかを説明します。
前提条件
- AWS または Azure 上の Lakebase オートスケール プロジェクト(可観測性が構成済み)。「可観測性の構成」を参照してください。
シナリオ
スキーマ変更により、定常的なデプロイの一部としてALTER TABLE users DROP COLUMN bioが実行されます。アプリケーションは引き続き、そのプロファイルページでその列を読み取ります。数分以内に、プロファイルページのリクエストがcolumn "bio" does not existで失敗し始め、アプリケーションのエラー率が上昇します。
Genieの調査の流れ
Genieが見つけ出して推奨することは、お客様のデータとその背後にある問題によって異なります。そのため、これは参考として扱ってください。逐語的に表示されるスクリプトではありません。プロジェクトからGenieを開き(プロジェクト、Branch、Endpointのコンテキストが自動的に取得されます)、症状を説明してください。そこから、一般的な調査は4つの段階を経て進みます。
症状を記述します
同僚に話しかけるような平易な言葉で質問してください: 「エラー率が上昇しているのはなぜですか?」 原因や失敗したクエリー、またはどのテーブルが関与しているかを知る必要はありません。
Genieは履歴を関連付けて読み取ります
エラーを失敗したクエリーに関連付け、DDL 履歴を確認して何が変更されたかを調べます。DDL 履歴はすべての変更をキャプチャするわけではありません(コンピュートがスケール・トゥ・ゼロから再開した直後に行われた変更は見逃される可能性があります)。そのため、レコードが見つからない場合、Genie はその旨を通知し、テーブルの現在の列とクエリーが予期する列を比較する処理にフォールバックします。いずれの場合も、bio が削除された列として識別されます。これは Insights が読み取る履歴と同じであるため、Genie はバックグラウンドの知見が中断したところから再開できます。
Genieは、見つかった内容に基づいて復旧を提案します
通常、変更の直前に作成された特定の時点の Branch から開始されます。これは、本番運用とストレージを共有するインスタントなコピーオンライト クローンであるため、あらゆる修正に対して低コストで起動できます。そこからの復旧は対話形式で行われます。Genieが不足しているデータを現在のテーブルにコピーし直すか、アプリケーションを復元されたBranchに切り替える可能性があります。一部のパスでは、Genieが単独で検出できない接続文字列など、途中で詳細情報の入力が必要になる場合があります。
何かが適用される前に確認します
Genie が単独で復元、変更、または修正を適用することはありません。実行したアクションは報告されますが、重要なアクション(復元ポイント、削除された Branch など)については、それらに依存する前に Lakebase UI で確認してください。
注意すべき制限事項
- いくつかの一般的なGenie UI要素 (カスタマイズ、自動化、スペース、コンテキストの追加など) は現在Genieに表示されますが、まだ機能しません。
- Lakebase UIの外部(例えば、ノートブックから)で継続されたGenieの会話は、会話履歴は保持されますが、元のページのツールとコンテキストは失われます。最も信頼性の高い結果を得るために、Lakebaseプロジェクト内から新しい調査を開始してください。
- BranchとEndpointは、表示名(「本番運用」など)ではなく、内部 ID で表示されます。Genie の回答がどのBranchまたはEndpointを指しているのか曖昧な場合は、Lakebase UI で ID を照合してください。詳細については、「テレメトリの制限事項」を参照してください。
次のステップ
- Insightsを使用して問題を特定および解決する : プロアクティブなモニタリングを有効にすることで、このような問題が表面化する前に把握できます。
- テレメトリテーブルのリファレンス :Genieが読み取るテーブルと現在の制限事項。
- プロジェクトを復元する :Genie外でのポイントインタイムリカバリについて詳細を確認してください。「特定の時点への復元」を参照してください。