プロダクション・データのパージ
Ensemble, 管理データの削除 ページでは、イベント・ログ、メッセージ・ウェアハウス、ビジネス・プロセス・ログ、ビジネス・ルール・ログ、および I/O アーカイブ・ログから古くなったエントリを削除できます。パージできるのは、アクティブ・ネームスペースに関連付けられているエントリのみです。このページに移動するには、[Ensemble]、[管理]、[管理データの削除]、[進む] の順にクリックします。
この章では、以下のトピックについて説明します。
初回パージ
特に大量のデータをパージする場合は、パージ・アクティビティによって余分なジャーナルが生成され、大量のディスク容量が消費されることがあります。はじめて管理データをパージする場合は、パフォーマンス上の理由から、以下の方法を使用することもできます。
-
比較的少量のデータがパージされるようにパージ・パラメータを設定することから始めます。
次の節で説明するように、オプション [パージを行わない最新数] を使用して、何日分のレコードを残しておくかを指定します。この値は、比較的大きい数値に設定してください。
-
パージを実行します。
-
[パージを行わない最新数] が望ましい数値になるまで、データを残す日数を徐々に減らしていきます。
データの手動パージ
開発およびテスト期間中は通常、データを手動でパージします。(反対に、ライブ・システムの場合は通常、データを定期的にパージします。次の節の説明を参照してください。)
データを手動でパージするには、Ensemble, 管理データのパージ ページを使用します。このページには、以下の情報が表示されます。
-
[レコードのタイプ] — テーブル内の各行の目的を識別します。各行には、現在実行中のプロダクションが継続的に生成する 1 つの種類の成果物が含まれています。成果物の種類には、イベント・ログ、メッセージ、ビジネス・プロセス、ビジネス・ルール・ログ、I/O ログ、または管理対象アラートがあります。
-
[カウント] — このプロダクション用に格納されたこのタイプのエントリの合計数。[カウント] を使用してレコードをパージした方がよいかどうかを判断し、パージした方がよい場合は、何日分のレコードを保持するのかを決定します。
-
[削除] — [パージ開始] をクリックしてパージが完了したあとに、パージ・プロセスによって削除されたこのタイプのエントリの合計数。
テーブルの下に、パージ条件とパージを実行するコマンドを入力するためのボックスが表示されます。
-
[メッセージの本文を含める] — このチェックボックスにチェックが付いている場合は、Ensemble でメッセージ・ヘッダをパージする際に、関連するメッセージ本文もパージされることを示しています。パージする前に、本文クラスが存在し永続的であることが確認されます。
このチェックボックスにチェックが付いていない場合 (デフォルト) は、メッセージ・ヘッダのデータはパージされますが、メッセージ本文のデータは保持されます。メッセージ・ヘッダをパージしてもメッセージ本文を保持した場合、管理ポータルには親のないメッセージ本文をパージする方法が用意されていません。その場合は、メッセージ本文をプログラムでパージする必要があります。ENSDEMO データベースのクラス Demo.Util.CleanupSetOpens in a new tab に、プログラムでのパージ方法の例があります。
Important:Ensemble でメッセージ・ボディがパージされたときに、必ずしも、メッセージ・ボディのオブジェクト値型プロパティが削除されるわけではありません。具体的には、これらがシリアル・オブジェクトまたは子オブジェクト (リレーションシップによって定義) の場合にのみ他のオブジェクトが削除されます。その他のオブジェクトの場合は、削除トリガを定義したり、メッセージ・ボディ・クラス内に %OnDelete() メソッドを実装したりすることによって、削除を適切に処理する必要があります。
-
[データ整合性の維持] — このチェックボックスにチェックが付いている場合 (デフォルト) は、Ensemble でメッセージ・ヘッダをパージする際にメッセージがパージの経時基準に合致する場合でも、ステータスが完了でなければそのメッセージは削除されません。Ensemble では、[完了]、[エラー]、[中止されました] または [破棄されました] とマーキングされた場合に、メッセージが完了したと見なされます。これは、セッションレベルの整合性を維持するためです。
削除するメッセージを特定するクエリでは、ビジネス・プロセスのインスタンスも含め、セッションにあるすべてのメッセージを対象として、未完了のメッセージがあるかどうかを確認します。すべてのメッセージが完了している場合、このパージでは削除のみが実行されます。そのため、このクエリの範囲によって、パージの実行に必要な時間が変化します。
このオプションは、長期実行型のビジネス・プロセスをサポートするために重要です。通常、これが適切な動作です。一方、ステータスが未完了であっても重要ではない古いメッセージがシステムに存在するとわかっている場合は、[データ整合性の維持] チェックボックスのチェックを外すことによって、それらのメッセージをパージできます。
Important:[データ整合性の維持] を使用するためのパージ基準では、スケジューラなどの Ensemble システム・プロセスも対象としています。このチェックボックスのチェックを外す前に、[パージを行わない最新数] 設定の値を慎重に検討してください。
-
[パージを行わない最新数] — 何日分のレコードを残しておくかを Ensemble に指示します。値を 0 (ゼロ) にすることもできます。この場合、パージする段階で存在するすべてのエントリが削除され、何も残りません。[パージを行わない最新数] のデフォルト値は 7 です。これにより、最近 7 日間のエントリが保存されます。
日数には、本日も含まれるので、1 日分のメッセージを保存する場合は、ローカル・サーバの時刻での本日に生成されたメッセージが保存されます。
[パージ条件] ボックスの下部には [パージ開始] コマンドがあります。このコマンドをクリックすると、入力したパラメータに従って、永続ストアが即座にパージされます。このページでは、バックグラウンド・ジョブを使用してパージを実行し、最後に実行したパージの結果を、ステータス・コード、つまりバックグラウンド・ジョブが実行中であるのか実行に失敗したのかの通知を含めてレポートします。パージが完了すると、[削除されました] 列に、パージされたレコード数がタイプ別に表示されます。現在ネームスペースでパージが実行されている場合、[削除開始] コマンドは非アクティブです。
[パージ開始] の操作を元に戻すことはできません。
データの定期パージ
ライブ・システムでは、通常は定期的にデータをパージします。そのためには、以下のように操作します。
-
[システム操作] をクリックし、[タスクマネージャ] をクリックしてから、[新しいタスク] をクリックします。
-
[タスク名] に対して、タスク名を入力します。
-
[このタスクを実行するネームスペース] に対して、適用可能なネームスペースを選択します。
-
[タスクタイプ] に対して、Ens.Util.Tasks.PurgeOpens in a new tab を選択します。
このクラスを選択すると、このページが更新されて、このタスクに構成可能な情報が表示されます。
-
以下のオプションを指定します。
-
BodiesToo — [メッセージの本文を含める] オプションに相当します。メッセージ・ボディをパージすることは重要です。したがって、ほとんどの場合にこのオプションを true に設定する必要があります。メッセージ・ボディを定期的にパージしない場合は、このストレージが解放されるように別のメカニズムを用意する必要があります。
-
KeepIntegrity — [データ整合性を維持] オプションに相当します。
-
NumberOfDaysToKeep — [パージを行わない最新数] オプションに相当します。
-
TypesToPurge — パージするデータのタイプを選択します。
-
-
必要に応じて、その他のオプションも指定します。詳細は、"Caché システム管理ガイド" の “Caché の管理” の章で、“タスク・マネージャの使用” を参照してください。
-
前に参照した節の説明に従い、ウィザードを完了します。