単一レコードのテキストインデックスの再生成

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む2読むのに数分
  • 単一レコードのテキスト検索インデックスを更新します。このアプローチを使用すると、テーブル全体のフルテキストインデックスを再構築せずに、テキストインデックスの作成が検索の問題の原因であるかどうかをすばやく確認できます。

    始める前に

    以下を特定します。
    • 期待する結果を返さない検索用語
    • 用語の検索時に返されない、識別された検索用語を含むレコード
    • 識別されたレコードを含むテーブル

    識別されたテーブルでは、既にテキストインデックス作成が有効になっている必要があります。

    必要なロール:admin

    このタスクについて

    このインデックスの再作成メソッドでは、単一のレコードのテキスト検索インデックスを再構築します。テーブル内のすべてのレコードのテキストインデックスを再構築するよりも時間がかかりません。

    この方法を使用すると、テキストインデックス作成が検索の問題の原因であるかどうかをすばやく判断できます。これを行うと、テーブルのテキスト検索インデックス全体の再構築に関連する遅延を回避できます。

    手順

    1. コンテキストメニューから [sys_id のコピー] を選択して、識別されたレコードの sys_id をコピーします。
    2. 移動先 すべて > システム定義 > スクリプト - バックグラウンド.
    3. [スクリプトの実行] (サーバーで実行される JavaScript)フィールドに次のスクリプトを入力し、<table> を識別されたレコードを含むテーブルの名前で置き換え、<sys_id> をステップ 1 でコピーしたレコードの sys_id で置き換えます。
      var gr = new GlideRecord('<table>');
      gr.get('<sys_id>');
      gs.eventQueue("text_index", gr, '[<table>]','update','text_index');
    4. [スクリプトの実行] を選択します。
      このスクリプトは、text_index キュー内に指定されたテーブルの text_index 更新イベントを作成します。
    5. 移動先 すべて > システムポリシー > イベント > イベントログ 新しいtext_index更新イベントのステータスが [ 処理済み] に変わるまで待ちます。
      新しいイベントを見つけるには、[名前][は次の値を含む][text_index] フィルターを適用し、イベントリストビューを 作成日時で降順 (z ~ a) に並べ替えます。

    タスクの結果

    指定されたテーブル内の指定されたレコードのテキストインデックスが更新されます。

    次のタスク

    サンプル検索を繰り返します。この検索で識別されたレコードが返された場合は、そのレコードを含むテーブル全体のテキストインデックスを更新することができます。詳細については、「テーブルのテキストインデックスの再生成」を参照してください。