実行待ちジョブを作らない
[キューの作成/編集]ウィンドウを使って、初期化ファイルにキュー内のジョブの多重度と投入可能ジョブ数を同じ制限値で定義した場合、ジョブは多重度の制限を超えて投入することはできません。
多重度として、負荷を考慮した適切な制限値を定義すれば、即実行できないジョブは投入が拒否される(実行待ちジョブを作らない)運用が可能です。
キュー内のジョブの多重度は、[運用情報の定義]ウィンドウより呼び出される[キューの作成/編集]ウィンドウの“同時実行可能なジョブ数を制限する(ジョブの多重度)”で定義します。投入可能ジョブ数も、同じウィンドウの“投入可能ジョブ数を制限する(ジョブ数)”で定義します。
本運用でのジョブキューのイメージ図を以下に示します。
ジョブの実行優先順位を制御する
ジョブの実行優先順位は、ジョブ投入時に指定します。これを省略した場合は、当該キューに設定された優先順位の省略値([キューの作成/編集]ウィンドウの“優先順位の省略値を指定する(優先順位の省略値)”の値)が採用されます。
ジョブは優先順位の高いものから実行されます。後から投入されたジョブでも、優先順位が高ければ先に実行されます。
このしくみを利用して、緊急に実行したいジョブを投入する場合は、他の実行待ちジョブよりも高い優先順位を指定します。
また、実行待ち状態のジョブに対しては、優先順位を動的に変更することもできます。
デマンドジョブを例に、緊急ジョブを投入する場合、および実行優先順位を動的に変更する場合の運用イメージを以下に示します。
リソースを占有してジョブを実行する
ジョブの実行時に使用するリソースは、占有指定することができます。また、すべてのジョブ(JCL以外のジョブも含む)は、“ホスト名”および“実行するキュー名”を共有属性で持っています。例えば、ホスト名を占有指定したジョブを投入すると、Systemwalker Operation Managerを導入しているサーバを占有(他のジョブが1つも実行されていない状態)して実行することができます。
参考
リソースとは
ジョブが実行時に使用する資源(ファイルやデータベースなど)を指します。
ジョブネットへのジョブ登録時、デマンドジョブ投入時、およびJCL(業務手続き言語)作成時において、排他属性を設定することができます。
同名ジョブの排他属性を指定した場合
同名ジョブの排他属性を指定していた場合、同じ名前のジョブは同時に実行されません。1つの実行対象ジョブ以外は、実行待ちジョブとしてキューイングされ、順番に実行されます。ジョブの実行順序は、優先順位やリソースの指定内容に従います。優先順位やリソースを指定しない場合は、投入した順序で実行されます。
この指定は、関連のある複数のジョブを順番に実行させる場合に有効です。
同名ジョブの排他属性を指定していた場合に、2種類の同じ名前のジョブが複数投入された運用イメージを以下に示します。
計算処理を複数マシンで分散実行し、実行率を平準化させる
計算アプリケーションの配置状態が統一されていない場合においても、分散実行機能を利用し、複数マシンで実行率を平準化させることができます。
実行率を平準化させるには、まず、アプリケーションの配置状態などの条件に従って、実行サーバを同一ホストグループとして定義し、キューへ関連付けします。
キュー/ホストグループ間で共有する実行サーバ負荷を考慮した平準化を実現するために、ホストグループ間でジョブ投入数を共有する設定にします。
ホストグループ間でジョブ投入数を共有する設定とするには、[運用情報の定義]ウィンドウの[旧互換]シートにおいて、“ホストグループ間で同一実行サーバへのジョブ投入数を共有する”をチェックします。
ユーザが使用するアプリケーションと関連付けられたキューにジョブを投入すると、他グループに登録された同一名称の実行サーバのジョブ投入数が反映されたうえで、実行サーバが割り当てられます。これにより、より実行率が低いサーバでジョブを実行することができます。