インデックス付きソース保持ポリシーとフィルター条件

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:4分
  • AI 検索 は設定を使用して、古いレコードをインデックスから自動的に消去し、検索パフォーマンスを最適化します。ソーステーブルからインデックスを付けるレコードのセットを制限するために、インデックス付きソースの保持ポリシーとフィルター条件を構成できます。

    インデックス付きソース保持ポリシー

    タスク [task] テーブルやそれを拡張するテーブルなどの大きなソーステーブルにインデックスを付けると、AI 検索 インデックスに多数のレコードが追加される可能性があります。最後に更新されてからの時間に基づいてインデックス付きソーステーブルレコードのセットを制限するには、インデックス付きソースの保持ポリシーを選択します。AI 検索 は、保持ポリシーに対して定義された期間内に更新されたソースレコードのみにインデックスを付けます。たとえば、2 年間の保存ポリシーを選択した場合、AI 検索 は 2 年以上前に最後に更新されたソースレコードを除外します。

    ソースレコードの最後の更新からの時間がインデックス付きソースの保持ポリシーの制限を超えた場合、AI 検索 は対応するインデックス付きレコードを古いものとしてマークします。
    注:
    タスク [task] テーブルまたはそれを拡張するテーブルのレコードにインデックスを付けるインデックス付きソースには、保持ポリシーが必要です。他のインデックス付きソースではオプションです。

    インデックス付きソースのフィルター条件

    ソーステーブルからインデックス付きレコードのセットを制限するには、インデックス付きソースのフィルター条件を定義します。AI 検索 は、定義されたすべてのフィルター条件に一致するレコードのみにインデックスを付けます。

    ソースレコードがインデックス付きソースのフィルター条件を満たさなくなった場合、AI 検索 は対応するインデックス付きレコードを古いものとしてマークします。

    古いレコードの消去

    AI 検索 はインデックスから古いレコードを毎日自動的に消去します。アドミンロールを持つユーザーは、古いレコードを手動で消去できます。この手順の詳細については、「古いレコードを AI 検索 インデックスから消去する」を参照してください。

    古いレコードを AI 検索 インデックスから消去する

    スケジュール済みジョブを実行して、AI 検索 インデックスから古いレコードを削除します。

    始める前に

    必要なロール:admin
    注:
    If the glide.script_processor.admin system property's value has been changed from the default value, you need the role specified by that property value. For details on this property value and its effects, see Restrict access to background script [Updated in Security Center 1.3 and 2.0].

    このタスクについて

    AI 検索 インデックスのレコードで次のいずれかの条件が満たされた場合、AI 検索 はそのレコードを古いものとしてマークします。
    • レコードの最後の更新からの経過時間が、インデックス付きソースの保持ポリシーからの経過時間制限を超えています
    • レコードは、インデックス付きソースに対して定義されたフィルター条件を満たさなくなりました
    AI 検索 はインデックスから古いレコードを毎日自動的に消去します。アドミニストレーターは、バックグラウンドスクリプトを実行して手動でレコードを消去できます。

    バックグラウンドスクリプトの実行の詳細については、「 Scripts - Background module」を参照してください。

    手順

    1. 移動先 すべて > システム定義 > スクリプト - バックグラウンド.
      注:
      If the glide.script_processor.admin system property's value is set to security_admin, you must elevate to that privileged role to access this module. For more information on elevating privileges, see Elevated privilege roles.
    2. [ スクリプトを実行 (サーバー上で実行される JavaScript)] テキストフィールドに、次のいずれかのバックグラウンドスクリプトを入力します。
      • 特定のテーブルからインデックス付けされた古いレコードを消去するには、次のスクリプトを入力し、 TABLE_NAME 選択したテーブルの名前に置き換えます。
        new sn_ais.IndexEvent().purgeFilteredDocuments('TABLE_NAME');
        たとえば、ナレッジテーブルのインデックス付きソースからインデックス付けされたすべての古いレコードを消去するには、スクリプト内の TABLE_NAMEkb_knowledge に置き換えます。
      • インデックスが作成されたテーブルに関係なく、インデックス内のすべての古いレコードを消去するには、次のスクリプトを入力します。
        new sn_ais.IndexEvent().purgeFilteredDocuments();
    3. [スクリプトを実行] を選択します。
      スクリプトは、インデックスハンドラーが処理するイベントを作成するため、消去ジョブの完了時にスクリプトはブロックされずに完了します。

    タスクの結果

    バックグラウンドスクリプトが実行され、 AI 検索 インデックスから古いレコードが削除されます。