Hitachi

JP1 Version 12 JP1/Automatic Job Management System 3 導入ガイド


4.2.3 ジョブネットの保存世代数の管理

ジョブネットの保存世代数と保存世代数の管理について説明します。

〈この項の構成〉

(1) 保存世代数とは

保存世代数とは,ジョブネットの実行結果として保存される世代数のことです。

ジョブネットを実行登録すると世代が作成されますが,そのうち実行した実績がある世代(実行中の世代や実行を終了した世代)を幾つ保存しておくかを保存世代数として設定できます。

保存世代数は,ルートジョブネットに設定します。保存世代数を設定すると,設定した世代分(回数分)の実行結果をJP1/AJS3 - Viewの[デイリースケジュール]ウィンドウと[マンスリースケジュール]ウィンドウ,Web GUIの[マンスリースケジュール]画面とユニット情報の取得API,およびajsshowコマンドで確認できます。ajsshowコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 3. 通常の運用で使用するコマンド ajsshow」を参照してください。

保存世代数は,1から99まで設定できます。データベースには「保存世代数登録ユニット数」に比例してデータが保存されるため,設定した保存世代数に応じて,登録解除などデータベースにアクセスするすべての操作に掛かる負荷が大きくなります。保存世代数を大きくする場合は,システム性能への影響を十分配慮した上で設定してください。ユニット数が多いジョブネットの場合は,保存世代数に10より小さい値を設定することを推奨します。また,保存された世代のうち不要なものは,そのつど日付指定で登録解除して削除してください。ジョブネットの登録解除については,「4.5.1 ジョブネットの登録を解除する」を参照してください。

注※

スケジューラーサービスの環境設定パラメーターMAXSAVEGENによる保存世代数の拡張機能もありますが,拡張する場合には注意が必要です。環境設定パラメーターMAXSAVEGENについては,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 20.4 スケジューラーサービス環境設定」を参照してください。

(2) 保存世代数の管理とは

保存される世代は,設定した保存世代数を超えないように管理されます。これを保存世代数の管理といいます。

保存世代数の管理は,次回予定の実行開始時など管理対象の世代が新たに増えるタイミングやスケジューラーサービスの起動時に処理され,管理対象の世代が設定した保存世代数を超える場合は,過去の実行結果から自動的に削除されます。

保存世代の管理対象となる世代と,処理のタイミングについて次の図に示します。

図4‒13 保存世代の管理対象となる世代と処理のタイミング

[図データ]

この例では,保存世代数が「3」と設定されているため,「正常終了」状態の世代と「実行中」状態の世代を合わせて世代数が3になるように管理されます。そのため,4日目にジョブネットが実行開始されるとき,1日目に実行された世代が削除され,保存されている世代数の合計が3になるように保たれます。ただし,管理対象の世代に「実行中」状態など終了状態ではない世代がある状態では,保存世代数を超えても削除されないため,実行結果が保存世代数より多く残されることがあります。この場合は,次に保存世代数管理の処理がされるときに,保存世代数を超過した分の世代がまとめて削除されます。

保存世代数を超えて保存された場合の例を,次の図に示します。

図4‒14 保存世代数を超えて保存された場合の保存世代数管理(再実行時)

[図データ]

この例では,保存世代数が「2」と設定されていますが,世代が「実行中」状態の間は保存世代数を超えても削除されません。次の実行予定世代が実行を開始したり,スケジューラーサービスを起動したりしたときに保存世代数管理の処理がされ,実行を開始した世代を含めて保存世代数「2」を超えた世代が,古いものから順に削除されます。

(3) 起動条件付きジョブネットの保存世代数管理の例

起動条件付きジョブネットの保存世代数の管理方法には,次の二つがあります。

一括管理方式と個別管理方式の保存世代数の考え方を次の図に示します。

どちらの場合も管理対象の世代が新たに増えるタイミング(起動条件の監視開始時および起動条件の成立によって次の実行世代が作成されるタイミング)や,スケジューラーサービス起動時に保存世代数管理の処理がされます。

図4‒15 一括管理方式と個別管理方式の保存世代数の考え方

[図データ]

一括管理方式では,監視世代数と実行世代数の総和が設定した保存世代数を超えないように管理されるため,この例のように保存世代数が「50」で,1日に50回起動条件が成立するジョブネットを50日間実行した場合,1日目でも50日目でも保存される世代数は50です。

一方,個別管理方式では,監視世代と実行世代それぞれが保存世代数の範囲内で保存されていくため,実際に保存される世代の数は,保存世代数として設定した値よりも大きくなります。そのため,1日に50回起動条件が成立するジョブネットを50日間実行した場合,2,550世代が保存されることになります。

補足事項

バージョン8までは個別管理方式で保存世代数を管理していましたが,バージョン9以降は一括管理方式で保存世代数を管理するように変更しています。

保存世代数を「10」以上にする場合は,一括管理方式で運用することを推奨します。

保存世代数を超えたときの処理について,管理方式ごとに説明します。

(a) 一括管理方式による保存世代数の管理

一括管理方式の場合,保存された世代数が設定した保存世代数を超えると,古い実行世代から順に削除されます。監視世代については,その監視世代の最後の実行世代が削除されるときに同時に削除されます。

なお,一括管理方式で運用する場合は保存世代数を「2」以上にしてください。例えば,少なくとも監視世代を1世代,実行世代を2世代保存したい場合は,保存世代数を「3」以上にする必要があります。保存世代数が「1」の場合,スケジューラーサービスの起動時など,保存世代数管理の処理がされるときに,実行結果が削除されるおそれがあります。

保存世代数を「2」,起動条件の有効範囲を「4回」とした場合の一括管理方式での処理例を次の図に示します。

図4‒16 一括管理方式での処理(保存世代数「2」,起動条件の有効範囲「4回」とした場合)

[図データ]

[図データ]

(b) 個別管理方式による保存世代数の管理

個別管理方式では,監視世代と実行世代それぞれが保存世代数の範囲内で保存されていくため,実際に保存される世代の数は,保存世代数として設定した値よりも大きくなります。そのため,起動条件の成立によって実行される回数を考慮した上で保存世代数を設定する必要があります。バージョン8以前のJP1/AJS2からバージョンアップインストールした場合は,個別管理方式で保存世代数が管理されます。起動条件付きジョブネットを運用する場合は,一括管理方式に変更することを検討してください。

また,起動条件付きジョブネットの保存世代数を増やす場合には,「(4) バージョン8以前のJP1/AJS2からバージョンアップインストールした場合の注意事項」についても参照してください。

保存世代数を「2」,起動条件の有効範囲を「4回」とした場合の個別管理方式の例を次に示します。

  • 1日目に実行世代数が保存世代数を超える場合

    1日目に実行世代数が保存世代数を超える場合の例を次に示します。

    図4‒17 個別管理方式での管理例(保存世代数「2」,起動条件の有効範囲「4回」とし,1日目に保存世代数を超える場合)

    [図データ]

  • 2日目以降に実行世代数が保存世代数を超える場合

    2日目以降に実行世代数が保存世代数を超える場合の例を次に示します。

    図4‒18 個別管理方式での管理例(保存世代数「2」,起動条件の有効範囲「4回」とし,2日目以降に保存世代数を超える場合)

    [図データ]

    [図データ]

(4) バージョン8以前のJP1/AJS2からバージョンアップインストールした場合の注意事項

バージョン8以前のJP1/AJS2からバージョンアップインストールした場合は,保存世代数の管理方式が個別管理方式になっています。起動条件付きジョブネットを運用する場合は,一括管理方式に変更することを検討してください。

(a) 個別管理方式から一括管理方式に変更する

起動条件付きジョブネットの保存世代数管理の方式は,環境設定パラメーターSAVEGENTYPEの値をjajs_configコマンドで設定することで変更できます。環境設定パラメーターの詳細については,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 20.4 スケジューラーサービス環境設定」を参照してください。

個別管理方式から一括管理方式に変更すると,個別管理方式で保存されていた世代から一括管理方式で保存される世代を差し引いた分の世代がスケジューラーサービス起動時に削除されます。この削除に掛かる時間(秒)は,登録済みルートジョブネットすべてに対して「設定した保存世代数設定した保存世代数」を算出した結果の総和に比例します。また,削除に掛かる時間は,使用しているハードウェアなどによっても変わります。削除に掛かる時間が運用に影響を与えると考えられる場合は,方式を変更する前に,不要な世代を手動で削除してください。あらかじめ削除しておくことで,スケジューラーサービス起動時に掛かる時間を短縮できます。

なお,世代は登録解除時にも削除されますが,登録解除や保存世代数管理による世代削除処理方式が「同期型」である場合は「非同期型」にすることで世代の削除に掛かる時間を短縮できます。JP1/AJS3 09-00以降またはJP1/AJS2 08-00以降を新規インストールした場合は,世代削除の方式がデフォルトで「非同期型」が設定されますが,バージョンアップインストールの場合は「同期型」が設定されることがあります。環境設定パラメーターBACKGROUNDLEAVEの設定値を確認し,「no」(同期型)が設定されている,または環境設定パラメーターBACKGROUNDLEAVEが設定されていない場合は,非同期型に変更することを推奨します。

世代削除処理方式の変更については,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 6.1.7 登録解除や保存世代数管理による世代削除処理方式の変更」(Windowsの場合)またはマニュアル「JP1/Automatic Job Management System 3 構築ガイド 15.1.7 登録解除や保存世代数管理による世代削除処理方式の変更」(UNIXの場合)を参照してください。

(b) 個別管理方式のまま運用する

個別管理方式のまま運用する場合は,バージョン8以前のJP1/AJS2と同様に,次に示す注意事項があります。

個別管理方式では,「(3)(b) 個別管理方式による保存世代数の管理」でも述べたように監視世代と実行世代それぞれが設定した保存世代数で管理され,「保存世代数*(保存世代数+1)」分の世代が保存されます。そのため,設定した保存世代数に応じて登録解除などデータベースにアクセスするすべての操作に掛かる負荷が大きくなります。システム性能への影響を十分配慮した上で保存世代数を設定してください。保存世代数と性能の関係については,マニュアル「JP1/Automatic Job Management System 3 設計ガイド(業務設計編) 7.2 保存世代数と性能との関係」を参照してください。

個別管理方式で起動条件付きジョブネットを運用する場合,10より小さい値を設定し,ajsshowコマンドで随時実行結果を保存することを推奨します。ajsshowコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 3. 通常の運用で使用するコマンド ajsshow」を参照してください。

また,実行登録済みであるジョブネットの保存世代数を現在の設定値より小さい値に変更する場合にも注意が必要です。保存世代数を現在の設定値より小さくした場合,設定を変更したあとに次回予定が監視中になって保存されている監視世代の数が設定した保存世代数を超えると,「(変更前の保存世代数変更後の保存世代数)*(変更前の保存世代数+1)」分の世代が一度に削除されます。そのため,保存世代数に大きな値を設定し,保存世代数の分だけ監視世代と実行世代が保存されている場合に,保存世代数の値を大幅に小さくすると一度に削除される世代数が多くなり,運用に影響が及びます。

保存世代数を小さい値に変更した場合の世代の削除例を次の図に示します。

図4‒19 保存世代数を小さい値に変更した場合の世代の削除例

[図データ]

[図データ]

例えば,この例のように保存世代数を「10」としていて10世代分(110世代)が保存されている状態から保存世代数を「2」に変更した場合,一度に削除される世代数は「88」となります。

個別管理方式のまま運用する場合は,これらのことを十分考慮してください。