Insights
2022.10
バナーの背景画像
Insights
最終更新日 2024年4月19日

データベースのメンテナンス

概要

Insights データベースは、dboread の 2 つのテーブルを使用して動作します。両方のテーブルに Orchestrator データベースのデータが格納され、相互にデータが渡されます。時間の経過とともにテーブルに大量のデータが格納され、データベースのパフォーマンスに影響を与える可能性があります。関係のないデータや古いデータを削除することで、領域を解放できます。

履歴データを保存するための推定しきい値は、以下のように設定されます。

  • 2 億件のロボット ログ
  • 1 億件のキュー アイテム イベント
  • 1 億件のジョブ イベント
  • 2,000 万個のキュー アイテム
  • 2,000 万個のジョブ
次のデータベース メンテナンス SQL スクリプトを使用して SQL ストアド プロシージャを作成します。次に、それらの SQL ストアド プロシージャを実行して、[dbo].Jobs[dbo].JobEvents[dbo].QueueItems[dbo].QueueItemEvents、および [dbo].RobotLogs テーブルから、または [dbo].RobotLogs のみから、すべてのデータを削除します。
注: スクリプトを実行する前にデータベースをバックアップしてください。PROCEDURE [read].[Delete_Insights_Data_Read] および PROCEDURE [read].[Delete_Process_Logs_Read] スクリプトを実行する前に、Insights モジュールを無効化する必要があります。

考慮事項

  • DBO スキーマ テーブルからデータを削除するには、_DBO サフィックスが追加されたスクリプトを使用します。
  • _Read サフィックスが追加されたスクリプトは、Read スキーマのテーブルからデータを削除するために使用します。
  • サイズの大きいバッチは、実行速度に影響を与える可能性があります。既定のバッチ サイズ (100000 に設定) の使用を検討してください。

前提条件

PROCEDURE [read].[Delete_Insights_Data_Read] および PROCEDURE [read].[Delete_Process_Logs_Read] スクリプトを実行する前に、Insights モジュールを無効化する必要があります。
  1. Orchestrator がインストールされている仮想マシンにログインします。
  2. 次のファイルを見つけます: C:\Program Files (x86)\UiPath\Orchestrator\UiPath.Orchestrator.dll.config
  3. メモ帳で、UiPath.Orchestrator.dll.config ファイルを開きます。
  4. 次の設定値を確認します。
    "codes": [
        {
          "code": "<add key=\"Insights.ModuleEnabled\" value=\"true\" />",
          "language": "text",
          "name": "configuration value"
        }
      ]
    }
      "codes": [
        {
          "code": "<add key=\"Insights.ModuleEnabled\" value=\"true\" />",
          "language": "text",
          "name": "configuration value"
        }
      ]
    }
  5. truefalse に置き換えます。
  6. ファイルを保存します。
  7. Orchestrator がインストールされている仮想マシンに戻り、仮想マシンを再起動します。
  8. メンテナンス スクリプトを実行します。
注: メンテナンス スクリプトの実行後は、Insights モジュールを必ず有効化してください。

SQL ストアドプロシージャ 1: カットオフ タイムスタンプに基づいてすべてのデータを削除する

次の SQL ストアド プロシージャを生成して保存し、カットオフ タイムスタンプまでのすべての種類のデータ (JobsJobEventsQueueItemsQueueItemEventsRobotLogs) を削除します。
SQL ストアド プロシージャパラメーター説明
Delete_Insights_Data_DBO
  • @CutoffTimeStamp DATETIME (必須)
    指定したタイムスタンプ (例: 2021-01-01 01:00:05) までの 5 種類のデータをすべて削除します。

    すべてのデータが削除されて空のテーブルになるようなタイムスタンプを入力しないでください。

  • @BatchSize INT = 100000 (任意)
    既定では、100000 に設定されます。

    データはバッチ単位で削除されます。たとえば、100 万件のロボット ログがあり、既定値をそのまま使用した場合は、削除コマンドが 10 回実行され、すべてのデータが削除されます。

[dbo].[Jobs]
[dbo].[JobEvents][dbo].[QueueItems][dbo].[QueueItemEvents][dbo].[RobotLogs] テーブルのデータをカットオフのタイムスタンプに基づいて削除します。
Delete_Insights_Data_ReadN/A[read].Jobs[read].JobEvents[read].QueueItems[read].QueueItemEvents、および [read].RobotLogs テーブルを切り捨てます。
注:

SQL ストアド プロシージャ 1 が完了し、データがバックフィルされた後、Insights のダッシュボード ウィジェットが再び利用できるようになります。大量のデータがある場合、バックフィル プロセスが完了するのに時間がかかる可能性があることにご留意ください。

Delete_Insights_Data_DBO SQL スクリプトを初めて実行すると、将来の実行を高速化することを目的として、QueueItems.IX_CreationTime 非クラスター化インデックスが作成されます。

SQL ストアド プロシージャ 2: プロセス名とテナント ID に基づいてロボット ログのデータを削除する

次の SQL ストアド プロシージャを生成して保存し、プロセス名とテナント ID に基づいてロボット ログを削除します。

SQL ストアド プロシージャパラメーター説明
Delete_Process_Logs_DBO
  • @ProcessName NVARCHAR(128) (必須)

Orchestrator のプロセス名です。

  • @TenantId INT (必須)

2 つのテナントが同じ名前のプロセスを実行する可能性があるため、テナント ID は必須です。

  • @BatchSize INT = 100000 (任意)

100000 件のバッチ単位でデータを削除します。「考慮事項」をご覧ください。

プロセス名とテナント ID に基づいて [dbo].[RobotLogs] テーブルからデータを削除します。
Delete_Process_Logs_Read
  • @ProcessName NVARCHAR(128) (必須)
  • @TenantId INT (必須)
[read].RobotLogs テーブルを切り捨てます。
注: SQL ストアド プロシージャ 2 が完了し、データがバックフィルされた後、ロボット ログに関連する Insights ダッシュボード ウィジェットを再び利用できるようになりました。大量のデータがある場合、バックフィル プロセスが完了するのに時間がかかる可能性があることにご留意ください。

Was this page helpful?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
UiPath ロゴ (白)
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.