---
sourceDocument: Xanadu Now Platform の管理
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/platform-administration

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu Now Platform の管理

ft:clusterId :

    - platadm

bundleId :

    - platadm

workflow :

    - Platform


---

# 古いレコードや不要なレコードの削除

# 古いレコードや不要なレコードの削除 {#ariaid-title1}

* リリースバージョン: Xanadu
* 
* 更新日 2024年08月01日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：3分

古いレコード、期限切れのレコード、または不要なレコードをテーブルから自動的に削除します。

タスク \[task\] テーブルなどのコアテーブルの古い非アクティブなレコードや、Now Platform で作成したカスタムテーブルのレコードを、テーブルクリーンアップルールを使用して削除します。  
ベースシステムにはデフォルトで、いくつかのテーブルクリーンアップルールが含まれています。

* フィルターナビゲーターで「<kbd class="ph userinput">sys_auto_flush.list</kbd>」と入力すると、自動フラッシュ \[sys_auto_flush\] テーブル内のすべてのテーブルクリーナールールのリストを表示できます。自動フラッシュテーブルには、ベースシステムテーブルのルールと、それに対応するレコードの経過時間が表示されます。
* 単一のテーブルに定義されているテーブルクリーナールールのリストを表示するには、次の場所に移動します。 すべてデータ管理ポリシー をクリックし、テーブルのデータ管理ポリシーレコードを選択します (存在する場合)。アーカイブルールまたはテーブルクリーナールールを持つテーブルのデータ管理ポリシーレコードが自動的に作成されます。
{#deleting-older-records__ul_anp_2w3_cbc}

## 遅いルール処理 {#deleting-older-records__section_myk_cly_mxb}

テーブルクリーナーのスケジュール済みジョブは、1 時間に 1 回実行されます (デフォルト)。テーブルクリーナージョブが実行されると、各テーブルクリーナールールはプロセスの一部としていくつかのクエリを実行します。ルールの一致フィールドまたはその条件の重要な部分にインデックスがない場合、大量のデータに対してクエリが非効率的に実行されるため、ルールの処理が遅くなる可能性があります。

テーブルクリーナールールに、完了までに 30 秒以上かかるクエリがある場合、テーブルクリーナージョブ全体が停止します。デフォルトでは、テーブルクリーナーは 2 日間待機してからそのルールを再度テーブルクリーナージョブに含めるため、その間にテーブルクリーナージョブを中断することなく実行できます。システムプロパティを追加することで、待機期間の長さを設定できます。「[テーブルクリーナーのプロパティ](https://servicenow-prod.fluidtopics.net/ubwo1MTwe5UEEXGwHh77ag "これらのシステムプロパティはテーブルクリーナーの動作を制御します。")」を参照してください。

## テーブルクリーンアップの無効化 {#deleting-older-records__section_ypj_qsv_szb}

テーブルの辞書レコードに \[テーブルクリーナーの無効化 (Disable Table Cleaner)\] 属性を追加することで、アドミニストレーターがテーブルクリーンアップルールを作成したり、特定のテーブルでテーブルクリーナーを実行したりできないようにすることができます。一部の内部システムテーブルには、デフォルトで \[テーブルクリーナーの無効化 (Disable Table Cleaner)\] 属性が追加されています。

## テーブルクリーンアップの制限事項 {#deleting-older-records__section_fgd_xwp_ktb}

* テーブルローテーションまたはテーブル拡張が設定されたテーブルでは、テーブルクリーナールールはサポートされません。インスタンス内の一部のテーブルには、テーブルローテーションまたはテーブル拡張が有効になる前に確立された従来のテーブルクリーナールールが存在する場合があります。これらの従来のルールは無視しても問題ありません。
* パフォーマンスは、テーブルのサイズと指定した条件によって異なります。たとえば、インデックスのない大きなテーブルでカスタム列を使用すると、パフォーマンスが大幅に低下します。パフォーマンスは、削除する行の数にも依存します。
* テーブルクリーナーは、1 つのテーブルからレコードを削除するのに最大 20 分かかります。クエリが遅い場合は、20 分間に削除されたレコードの量が少ない可能性があります。
* テーブルクリーナーは `DBDelete.setWorkflow()` を呼び出しません。これは、`DBDelete` オブジェクトが `workflow=false` (Java ブール型のデフォルト値は false) で実行されることを意味します。その結果、レコード削除時にトリガーするはずのビジネスルール、ワークフロー、およびフローは、テーブルクリーナーのコンテキストではトリガーされません。このタイプの機能に依存するビジネスロジックがある場合、この点を考慮することが重要です。
{#deleting-older-records__ul_gvk_gxp_ktb}
* **[テーブルのクリーンアップルールを作成する](https://servicenow-prod.fluidtopics.net/ll59hk6~_ArIunvvL4vNsQ)**   
  テーブルのクリーンアップルールで不要なレコードを削除するためのクライテリアを定義します。
* **[テーブルクリーナーのリソース使用量の管理](https://servicenow-prod.fluidtopics.net/IYpDQQ58DPIeur9AYXNu7A)**   
  テーブルクリーナージョブを更新して、テーブルクリーナーを使用するシステムリソースを制御します。

