このページはタスクを登録するだけで、データベースを直接変更することはありません。すべての変更はバックグラウンドで非同期に実行されるため、結果はタスク / 履歴で確認してください。
テーブルクエリ運用は既定で無効です。バックエンドで
V2_TABLE_QUERY_OPS_ENABLED を true に設定して再起動すると、このページが観測データの蓄積を始めます。対応が必要なテーブルを探す
ページを開くとテーブル一覧が表示されます。上部の状態ボタンにはそれぞれの件数が付いており、一覧を絞り込めます。
検索ボックスでは、テーブル、プロジェクト、スペースの名前とIDを指定できます。並べ替えは低速クエリが多い順またはテーブル名です。観測期間は直近1時間または24時間から選べ、一覧の観測値はすべてこの期間に従います。観測データの保持期間は2日間で、それより古いものは一覧に表示されません。
各行には、テーブルの推定行数とサイズ、期間内のリクエスト数と低速クエリ数、現在の検索方式とフィールドのカバー状況、フィルター/ソート用インデックスの数、未処理の推奨事項と実行中タスクの件数が表示されます。テーブル名をクリックすると詳細が開きます。
状態ボタンの右にあるインデックス状態についてを開くと、これらの件数の集計方法が説明されています。
インデックスの状態を読む
テーブル一覧と詳細では、検索方式の横にそのテーブルのインデックス状態が表示されます。
状態の下には次の2行が表示されることがあります。設定済み:pg_bigm / pg_trgmは、保存されたプロバイダーが現在の検索方式と異なることを示します。インデックス検索のランタイムスイッチ:オフは、インデックスは準備できているがランタイムが無効で、検索が
ILIKEのままであることを示します。
ページ上部の通知に、検索インデックスを設定済みなのに機能していないテーブルが表示された場合、それらのテーブルの検索はILIKEにフォールバックします。タスクワーカーがオフであることも表示されている場合は、バックエンドでV2_TABLE_QUERY_OPS_TASK_WORKER_ENABLEDをtrueに設定して再起動すると、インデックスを再構築できるようになります。
インデックスが公開済みでも、すべての検索がインデックスを使うわけではありません。検索語が短い場合やカバレッジ外のフィールドでは
ILIKEにフォールバックします。このページが示すのはインデックスの現状であり、直近のリクエストがインデックスを使ったことの証明ではありません。検索カバレッジを設定する
検索カバレッジタブには、そのテーブルの現在の検索方式、カバー済みフィールド数、各フィールドの有効なカバレッジが表示されます。未カバーのフィールドを表示を使うと、まだ含まれていないフィールドだけに絞り込めます。対象外と表示されたフィールドは、部分一致検索インデックスには使用できません。有効なカバレッジには、インデックスのメタデータが公開済みかつ利用可能で、ランタイムスイッチがオンであることが必要です。設定を保存しただけではカバレッジに数えられません。カバレッジは明示的に指定するため、あとから追加したフィールドは自動では含まれません。テーブルを設定し直して取り込んでください。
分析してドライランを実行すると、確定せずに変更を試算し、カバー対象のフィールド数、推定行数、実行計画の根拠の有無、新規作成または再構築による影響が表示されます。推定5万行以上のテーブルやサイズが不明なテーブルでは、メンテナンスウィンドウの確認チェックも必要です。内容を確認したら確認してタスクを登録を選びます。
ダイアログに表示されるのはタスクの受付結果であり、実行結果ではありません。ダイアログを閉じ、タスク / 履歴で進捗を追ってください。同じ変更を再送信しても、既存のタスクが返されます。
フィルター/ソート用インデックスを管理する
フィルター / ソートインデックスタブには、このテーブルのフィルター条件と並べ替えに使われる物理インデックスが、有効性、Teableによる管理の有無、サイズ、定義とともに表示されます。これらは部分一致検索インデックスとは別に管理されます。 その下の保留中の操作には、システムが提示したインデックスの推奨事項と、実行計画の根拠の有無が表示されます。インデックス作成を確認では、提案されたインデックス、実行先のデータベース、根拠を確認できます。確定すると、TeableはCREATE INDEX CONCURRENTLYを非同期で実行します。大規模なテーブルやサイズが不明なテーブルでは、ここでもメンテナンスウィンドウの確認が必要です。
このページからインデックスを削除することはできません。非管理インデックスやシステムインデックスは制約や他のクエリに使われている可能性があるため、削除の対象外です。
個別のクエリを診断する
特定のテーブルが遅いと報告されたものの、該当する推奨事項がない場合は、クエリ診断タブを開いてクエリを分析を選びます。分析は保存済みのクエリ形状と利用可能な実行計画の根拠を読み取るだけで、インデックスは作成しません。 結果は、実行計画に裏付けられたインデックス改善余地あり、利用可能な実行計画ではインデックス改善余地を確認できず、根拠不足のいずれかです。根拠不足はシーケンシャルスキャンが起きた証拠にはなりません。低速クエリの観測だけでは、アクセスパスに問題があるとは言えないためです。その下には、対象のクエリごとに、実際のトラフィック由来か保存済みビュー設定由来かと、提案インデックス適用前後の推定プランコスト(ミリ秒ではなくプランコスト)が表示されます。実行結果を追う
タスク / 履歴タブは3つの部分で構成されています。- タスク:このテーブルのバックグラウンドタスク。状態、試行回数、タスク種別、失敗理由が表示されます。失敗したあとに最終的に成功したタスクでは、エラーが過去の試行として表示されます。
- 検索設定履歴:過去の検索カバレッジ設定のプロバイダー、状態、フィールド一覧。
- 推奨事項の履歴:承認、却下、置き換えとなった推奨事項。
テーブルに待機中または実行中のタスクがある間は、検索の設定とインデックス作成のボタンは無効になります。タスクの完了を待ってから操作してください。

