JP2004295731A - バッチジョブ管理システム及びバッチジョブ管理プログラム - Google Patents
バッチジョブ管理システム及びバッチジョブ管理プログラム Download PDFInfo
- Publication number
- JP2004295731A JP2004295731A JP2003089753A JP2003089753A JP2004295731A JP 2004295731 A JP2004295731 A JP 2004295731A JP 2003089753 A JP2003089753 A JP 2003089753A JP 2003089753 A JP2003089753 A JP 2003089753A JP 2004295731 A JP2004295731 A JP 2004295731A
- Authority
- JP
- Japan
- Prior art keywords
- job
- time
- end time
- processing
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
【解決手段】各ジョブの処理件数に基づいて推定した処理時間と開始時刻とから各ジョブの終了時刻を推定する終了時刻推定手段と、最初に実行されるジョブから特定ジョブに至るネット上の複数のパスのうち、特定ジョブの開始時刻に影響を及ぼすクリティカルパスを判別するクリティカルパス判別手段と、上記推定手段で推定した特定ジョブの終了時刻が目標終了時刻よりも遅いときに、上記判別手段で判別したクリティカルパス上のジョブの処理の優先度を高める優先度変更手段とを備える。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、ネット状に関連付けられた多数のバッチジョブの処理システム及びバッチジョブ処理プログラムに関し、コンピュータを用いたデータ処理技術の分野に関する。
【0002】
【従来の技術】
コンピュータを用いたデータ処理システムにおいては、時間帯を分けてオンライン処理とバッチ処理とを実行することがあり、例えば、午前7時〜午後7時をオンライン時間帯、午後7時〜翌日午前7時をバッチ時間帯とする場合がある。この場合、オンライン処理の開始のために、最後のバッチジョブを午前7時までに完了する必要があり、また、バッチ処理によって作成したファイルを他の部署に伝送して業務に使用する場合等に、その業務の開始のために当該バッチジョブを設定された時刻までに終了しなければならない場合がある。
【0003】
このようにバッチジョブの終了時刻が規制される場合に、確実にその時刻までに完了するためのものとして、特許文献1に開示された発明が存在する。
【0004】
この発明は、終了時刻が設定されているジョブについては、指定された時間内に実行を開始する権利を付与した整理券情報を対応付けてバッチ処理システムにキューイングすると共に、バッチの実行を制御する制御手段は、この整理券情報が対応付けられたジョブについては、その情報に示された時間内に実行を優先的に開始するようにしたものであり、これによれば、終了時刻が設定されたジョブが通常のジョブより優先的に処理され、設定された時刻までに完了することが期待できる。
【0005】
【特許文献1】特開平11−24779号公報
【発明が解決しようとする課題】
しかし、上記特許文献1に記載されたシステムは、終了時刻が設定されているジョブと通常のジョブとの間に関連性がない場合に、整理券情報を付与して投入したジョブを、必要に応じて通常のジョブより優先させて実行するというものであり、ネット状に関連付けられた多数のジョブの処理システムにおいて、効果的に実施されるものではない。
【0006】
つまり、多数のジョブがネット状に関連付けられ、先行する1つ又は複数のジョブの終了が後続の1つ又は複数のジョブの起動条件となっているいわゆるジョブネットにおいては、終了時刻が設定されている特定のジョブについて整理券情報を付与しても、先行ジョブの終了が1つでも遅延すれば、特定ジョブも設定時刻に終了しないことになる。
【0007】
また、これを回避するために、特定ジョブとそのジョブに先行する全てのジョブに整理券情報を付与すると、特にネット上の複数の経路を経て当該特定ジョブに至る場合に、各経路上の全てのジョブについて整理券情報を付与しなければならないことになって、優先されるジョブの数が著しく増大し、その結果、優先の効果が低下して特定ジョブの設定時刻までの終了が困難となると共に、通常のジョブの処理が必要以上に犠牲にされて、システム全体としての処理能力が低下することになる。
【0008】
さらに、上記整理券情報は終了時刻が設定されているジョブについては事前に付与されるので、各ジョブの処理が順調に進み、終了時刻に余裕が生じている場合にも特定ジョブ或いはそれに先行するジョブが優先されることになって、その他のジョブの処理が徒に遅延されるおそれがある。
【0009】
そこで、本発明は、多数のジョブがネット状に関連付けられており、かつそのうちの少なくとも1つの特定ジョブについて終了時刻が設定されているジョブネットにおいて、上記特定ジョブを設定時刻までに終了させるために優先させるジョブを必要最小限にとどめることにより、当該特定ジョブを効果的に優先させて設定時刻までに確実に終了させると共に、通常のジョブを犠牲にすることを極力回避して、システム全体としての処理を促進し、また、そのための制御をバッチ処理動作中の各時点の状況に応じて動的に対応しながら実行することにより、上記目的をより効果的に達成することを課題とする。
【0010】
【課題を解決するための手段】
上記課題を解決するため、本発明は次のように構成したことを特徴とする。
【0011】
まず、本願の請求項1に記載の発明は、1又は複数のジョブの終了が他の1又は複数のジョブの起動の条件となって多数のジョブがネット状に関連付けられ、かつそのうちの少なくとも1つのジョブについて目標終了時刻が設定されているジョブネットを処理対象とするバッチジョブ処理システムに関するものであって、各ジョブの終了時刻を推定する終了時刻推定手段と、最初に実行されるスタートジョブから目標終了時刻が設定された特定ジョブに至るネット上の複数のパスのうち、特定ジョブの開始時刻に影響を及ぼすクリティカルパスを判別するクリティカルパス判別手段と、上記推定手段で推定した特定ジョブの終了時刻が目標終了時刻よりも遅いときに、上記判別手段で判別したクリティカルパス上のジョブの処理の優先度を高める優先度変更手段とを有することを特徴とする。
【0012】
また、請求項2に記載の発明は、上記請求項1に記載のシステムにおいて、優先度変更手段は、終了時刻推定手段で推定した特定ジョブの終了時刻が目標終了時刻よりも遅い場合に、その遅れの程度が大きいほどクリティカルパス上のジョブの処理の優先度をより高くすることを特徴とする。
【0013】
これらの発明によれば、まず、目標終了時刻が設定されている特定ジョブについて、終了時刻推定手段によって推定した終了時刻が目標終了時刻よりも早いときは、優先度変更手段による優先度の変更は行われないから、不必要な優先度の変更による通常のジョブの処理の遅延や、これに伴うシステム全体の処理能力の低下が回避されることになる。
【0014】
一方、上記特定ジョブの推定終了時刻が目標終了時刻よりも遅いときは、優先度変更手段により、クリティカルパス上のジョブが、スタートジョブから特定ジョブの直前のジョブまで或いは該特定ジョブを含めて、一斉に優先度が高められると共に、これ以外のジョブについては優先度を高めることがないから、特定ジョブの直前のジョブの終了時刻、即ち特定ジョブの開始時刻が効果的に早められることになり、その終了時刻が目標終了時刻内に収まる確率が向上することになる。
【0015】
その場合に、請求項2に記載の発明によれば、推定終了時刻が目標終了時刻よりも遅い場合に、その遅れの程度に応じてクリティカルパス上のジョブの優先度を高める度合いが大きくされるから、推定終了時刻の遅れが小さいときに必要以上に優先度を高めることが回避されると共に、推定終了時刻の遅れが大きいときには優先度が十分高められ、特定ジョブの終了が目標終了時刻より遅延することが一層効果的に防止されることになる。
【0016】
また、請求項3に記載の発明は、上記請求項1又は請求項2に記載のシステムにおいて、各ジョブごとに処理件数と処理時間の実績を記録するジョブ実績記録手段を備えると共に、終了時刻推定手段は、各ジョブごとに、上記ジョブ実績記録手段に記録されている各ジョブの過去の実績に基づいて設定した処理件数と処理時間の関係式と、今回の処理件数とから推定処理時間を算出し、この推定処理時間と開始時刻とから終了時刻を推定することを特徴とする。
【0017】
また、請求項4に記載の発明は、上記請求項3に記載のシステムにおいて、各ジョブで扱うファイルのレコード件数の実績を記録するファイル実績記録手段を備えると共に、終了時刻推定手段は、今回の各ジョブの処理件数を、上記ファイル実績記録手段に記録されている各ファイルのレコード件数の過去の実績と、スタートジョブに入力されるファイルのレコード件数とから推定することを特徴とする。
【0018】
これらの発明によれば、各ジョブの終了時刻が過去の実績に基づく統計処理により、精度よく推定されることになる。
【0019】
特に、請求項4に記載の発明によれば、終了時刻を推定するための各ジョブの今回の処理件数が、バッチ処理業務の開始前に予め計算しておかなくても、スタートジョブに入力されるファイルの既知のレコード件数と過去の実績とから直ちに求めれることになる。したがって、特にジョブの実行によって出力ファイルに生成されるレコード件数が予測困難な場合にも、各ジョブの処理件数を的確に求めることができ、終了時刻の推定精度を容易にかつ効果的に高めることが可能となる。
【0020】
そして、請求項5に記載の発明は、上記請求項1から請求項4のいずれかに記載のシステムにおいて、終了時刻推定手段は、各ジョブの終了ごとに、後続ジョブの終了時刻を推定し直し、クリティカルパス判別手段及び優先度変更手段は、各ジョブの終了ごとに、終了時刻推定手段で推定し直した終了時刻に基づいてクリティカルパス判別処理及び優先度変更処理を行うことを特徴とする。
【0021】
この発明によれば、クリティカルパス上のジョブの抽出ないし優先度の変更が、バッチ処理作業の開始時だけでなく、作業中における各ジョブの終了時ごとに、その時点の最新の推定終了時刻に基づいて行われることになる。
【0022】
したがって、例えば、当初クリティカルパスと認定されたパス上のジョブの処理が予想以上に進捗した場合、各ジョブの終了時刻の推定のし直しにより、特定ジョブの推定終了時刻の目標終了時刻に対する遅れが軽減又は解消され、或いはクリティカルパスの認定が他のパスに変更されることになり、この場合、不必要な優先が回避されることになる。また、これとは逆に、ジョブの処理が予想以上に遅延した場合には、特定ジョブの推定終了時刻の目標終了時刻に対する遅れが著しくなるので、クリティカルパス上のジョブの優先度がさらに高められることになり、或いは、当初クリティカルパスと認定されたパス以外のパスが新たにクリティカルパスと認定されて、そのパス上のジョブの優先度が高められることになる。
【0023】
このように、作業の進捗に応じて、優先度の設定、変更が行われることになるので、不必要に優先度を高めることなく、しかも必要な場合には迅速かつ十分に優先度が高められて、特定ジョブの遅延が一層効果的に防止されることになる。
【0024】
一方、請求項6に記載の発明は、1又は複数のジョブの終了が他の1又は複数のジョブの起動の条件となって多数のジョブがネット状に関連付けられ、かつそのうちの少なくとも1つのジョブについて目標終了時刻が設定されているジョブネットを処理対象とするバッチジョブ処理プログラムに関するものであって、コンピュータを、各ジョブの終了時刻を推定する終了時刻推定手段、最初に実行されるスタートジョブから目標終了時刻が設定された特定ジョブに至るネット上の複数のパスのうち、特定ジョブの開始時刻に影響を及ぼすクリティカルパスを判別するクリティカルパス判別手段、及び、上記推定手段で推定した特定ジョブの終了時刻が目標終了時刻よりも遅いときに、上記判別手段で判別したクリティカルパス上のジョブの処理の優先度を高める優先度変更手段として機能させることを特徴とする。
【0025】
また、請求項7に記載の発明は、上記請求項6に記載のプログラムにおいて、コンピュータを優先度変更手段として機能させるときは、終了時刻推定手段で推定した特定ジョブの終了時刻が目標終了時刻よりも遅い場合に、その遅れの程度が大きいほどクリティカルパス上のジョブの処理の優先度をより高くするように機能させることを特徴とする。
【0026】
また、請求項8に記載の発明は、上記請求項6又は請求項7に記載のプログラムにおいて、コンピュータを、各ジョブごとに処理件数と処理時間の実績を記録するジョブ実績記録手段として機能させると共に、終了時刻推定手段として機能させるときは、各ジョブごとに、上記ジョブ実績記録手段に記録されている各ジョブの過去の実績に基づいて設定した処理件数と処理時間の関係式と、今回の処理件数とから推定処理時間を算出し、この推定処理時間と開始時刻とから終了時刻を推定するように機能させることを特徴とする。
【0027】
また、請求項9に記載の発明は、上記請求項8に記載のシステムにおいて、コンピュータを、各ジョブで扱うファイルのレコード件数の実績を記録するファイル実績記録手段として機能させると共に、終了時刻推定手段として機能させるときは、今回の各ジョブの処理件数を、上記ファイル実績記録手段に記録されている各ファイルのレコード件数の過去の実績と、スタートジョブに入力されるファイルのレコード件数とから推定するように機能させることを特徴とする。
【0028】
そして、請求項10に記載の発明は、上記請求項6から請求項9のいずれかに記載のプログラムにおいて、コンピュータを終了時刻推定手段として機能させるときは、各ジョブの終了ごとに後続ジョブの終了時刻を推定し直し、クリティカルパス判別手段及び優先度変更手段として機能させるときは、各ジョブの終了ごとに、終了時刻推定手段で推定し直した終了時刻に基づいてクリティカルパス判別処理及び優先度変更処理を行うように機能させることを特徴とする。
【0029】
上記の請求項6から請求項10に記載のプログラムに関する発明は、請求項1から請求項5に記載のシステムに関する発明にそれぞれ対応し、したがって、これらのプログラムを用いてコンピュータを稼動させることにより、請求項1から請求項5に記載のシステムに関する発明と同様の作用が得られる。
【0030】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。なお、以下の実施の形態は本発明のバッチジョブ管理システムに係るものであると同時に、このシステムで用いられるプログラムは、本発明のバッチジョブ管理プログラムの実施の形態を構成するものである。
【0031】
図1は本実施の形態に係るバッチジョブ管理システムの全体の構成を示すもので、このシステムは、コンピュータ1と、該コンピュータ1の記憶装置に記録された複数のプログラム及び複数のテーブルとで構成されている。
【0032】
上記プログラムとしては、まず、バッチ処理用の基本プログラムとして、バッチジョブの起動順序や起動時刻を管理するバッチ管理プログラムP1と、該プログラムP1の管理の下でバッチジョブを実行するジョブ実行プログラムP2とが備えられている。
【0033】
また、目標終了時刻が設定されたジョブ(以下、「特定ジョブ」という)についての終了時刻管理用プログラムとしては、事前に目標終了時刻を設定する目標終了時刻設定プログラムP3と、終了時刻管理用の統計データを作成する日次処理プログラムP4及び月次処理プログラムP5と、バッチ処理の実行開始時に各ジョブの終了時刻を予め推定する終了時刻推定プログラムP6と、バッチ処理の進捗に併せて各ジョブの終了時刻の推定を更新する終了時刻更新プログラムP7と、これらのプログラムP6、P7でサブルーチンとして用いられる処理時間算出プログラムP8と、同じくサブルーチンとして用いられるプログラムであって、終了時刻の推定結果に基づき、上記特定ジョブの終了時刻に影響を及ぼすクリティカルパス上のジョブ(以下、「クリティカルジョブ」という)がどのような状況にあるかを判定するクリティカルジョブ判定プログラムP9とが備えられている。
【0034】
そして、このクリティカルジョブの状況に応じて、上記ジョブ実行プログラムP2が各ジョブの処理の優先度を設定し、上記特定ジョブが目標終了時刻までに終了するように動作する。
【0035】
また、これらのプログラムP1〜P9によるバッチ処理の制御や管理に用いられるテーブルとしては、まず、基本制御用として、各ジョブの処理の優先度を予め設定、記録した優先度管理テーブルT1が備えられており、また、上記特定ジョブの終了時刻管理用のマスターとして、その目標終了時刻や該時刻に対する遅延度合いを管理する目標時刻管理テーブルT2と、各ジョブの開始条件等を管理するジョブ開始管理テーブルT3と、処理対象ジョブネットの構成を管理するジョブ・ファイル関連テーブルT4とが備えられている。
【0036】
また、上記特定ジョブの終了時刻管理用の各種データを記録するものとして、毎日の各ファイルのレコード件数の実績を記録するファイル実績テーブルT5と、このレコード件数の1月間での平均を記録するファイル平均実績テーブルT6と、毎日のジョブの処理実績を記録するジョブ実績テーブルT7と、このジョブ処理実績の1月間での平均を記録するジョブ平均実績テーブルT8とが備えられている。
【0037】
さらに、バッチ処理実行中に更新、参照されるデータの記録用として、実行開始時に推定され、実行中にその推定値が更新される各ファイルのレコード件数を記録するファイル実行履歴テーブルT9と、処理実行開始時に推定した各ジョブの終了時刻等と処理実行中に更新された各ジョブの終了時刻等を記録するジョブ実行履歴テーブルT10と、実行開始時に推定され、実行中にその推定内容が更新されるクリティカルジョブの状況を記録するクリティカルジョブ管理テーブルT11とが備えられている。
【0038】
ここで、この実施の形態の処理対象となっているジョブネットの腰部の構成について説明すると、図2に示すように、このジョブネットは、FILE−01を処理の中心的な対象である基準ファイルとし、このFILE−01とFILE−02とがバッチ処理の開始時に最初に実行されるスタートジョブとしてのJOB−01に入力され、このJOB−01によりFILE−03が出力される。
【0039】
以下、JOB−02は、上記FILE−03を入力して、FILE−04、05、06、07、08を出力し、JOB−03は、上記FILE−01、03、04、05を入力して、FILE−09を出力し、JOB−04は、上記FILE−06を入力して、FILE−10、11を出力し、JOB−05は、上記FILE−07を入力して、FILE−12を出力し、JOB−06は、上記FILE−08を入力して、FILE−13を出力し、JOB−07は、上記FILE−09を入力して、FILE−14を出力し、JOB−08は、上記FILE−06、10、11を入力して、FILE−15を出力し、JOB−09は、上記FILE−12を入力して、FILE−16、17を出力し、JOB−10は、上記FILE−13を入力して、帳票を出力し、JOB−11は、上記FILE−15、16、17を入力して、FILE−18を出力するようになっている。
【0040】
また、図1に示す上記各テーブルT1〜T11の構成を説明すると、まず優先度管理テーブルT1は、図3に示すように、各ジョブについて、その識別IDをキーとして、優先度を示す記号A(優先度:普通)、B(同:やや高)、C(同:高)を記録するようになっている。
【0041】
また、目標終了時刻管理テーブルT2は、図4に示すように、目標終了時刻が設定されているジョブについて、その識別IDをキーとして、設定された目標終了時刻、即ちその時刻が経過したときに目標時刻より遅延する恐れが生じる時刻(以下、「遅延注意時刻」という)と、さらに遅延の程度が危険状態となる時刻(以下、「遅延危険時刻」という)とを記録するようになっている。
【0042】
また、ジョブ開始管理テーブルT3は、図5に示すように、各ジョブについて、その識別IDをキーとして、そのジョブが起動するために終了したことが条件となるジョブ、つまり図2に示すジョブネットにおいて、当該ジョブの入力ファイルを出力する直上位のジョブ(以下、「起動条件ジョブ」という)と、各ジョブの終了時刻推定のために一部のジョブに設定された設定開始時刻とが記録されるようになっている。
【0043】
ここで、上記設定開始時刻は、例えば当該システム外から伝送等でファイルを入手する場合に、その入手期限となる時刻等であり、各ジョブの終了時刻推定時には、その時刻に当該ジョブが開始するものとして推定されるが、例えば伝送ファイルをそれより早く入手した場合等は、当該ジョブの開始時刻は設定開始時刻より前の時刻となる。
【0044】
また、ジョブ・ファイル関連テーブルT4は、図6に示すように、図2に示すジョブネットの構成を記録するもので、各ジョブについて、その識別IDをキーとして、入力ファイルと出力ファイルとが記録されている。なお、このテーブルT4は、各ファイルについて、その識別IDをキーとして、そのファイルが入力されるジョブと出力されるジョブとを記録するように構成してもよい。
【0045】
また、各種データ記録用としてのファイル実績テーブルT5は、図7に示すように、毎日のバッチ処理が終了したきに、各ファイルごとに処理したレコード件数の実績を記録するようになっている。
【0046】
また、ファイル平均実績テーブルT6は、図8に示すように、上記ファイル実績テーブルT5に記録されている毎日のレコード件数の実績の1月間での平均を記録するようになっている。
【0047】
また、ジョブ実績テーブルT7は、図9に示すように、毎日のバッチ処理が終了したきに、各ジョブごとに処理した件数とその処理時間の実績を記録するようになっている。ここで、ジョブの処理件数とは、入力ファイルと出力ファイルのレコード件数の総和をいう。
【0048】
さらに、ジョブ平均実績テーブルT8は、図10に示すように、各ジョブごとに、上記ジョブ実績テーブルT7に記録されている処理件数及び処理時間の実績の1月間での平均と、毎日の処理件数と処理時間との関係から統計的に求められる処理件数に対する処理時間の変化率とを記録するようになっている。
【0049】
ここで、上記処理時間変化率は、図11に示すように、毎日の処理件数と処理時間とをX、Y座標とする点をXY平面上にプロットし、これらの点を例えば最小2乗法で直線化したときの勾配を示し、この勾配をa、上記平均処理件数をX0、平均処理時間をY0とすれば、当該ジョブの処理件数Xと処理時間Yとの関係は、次式
Y=a(X−X0)+Y0
で表される直線によって示されることになる。
【0050】
一方、バッチ処理中にデータが更新、参照されるテーブルのうちのファイル実行履歴テーブルT9は、図12に示すように、ファイル名をキーとして、各ファイルのレコード件数を記録するようになっている。その場合に、FILE−01とFILE−02は、今回のバッチ処理に際して外部から入力されるので、そのレコード件数は既知であるが、FILE−03以下については、基準ファイルであるFILE−01の今回のレコード件数と、図8のファイル平均実績テーブルT6に記録されている各ファイルの平均レコード件数とから算出して記録するようになっている。そして、バッチ処理中における各ジョブの終了時に、件数が確定したファイルについては、レコード件数を実績値に更新するようになっている。
【0051】
また、ジョブ実行履歴テーブルT10も、バッチ処理中にデータが更新、参照されるテーブルであって、図13に示すように、各ジョブの識別IDをキーとして、各ジョブの処理件数、処理時間、開始時刻及び終了時刻の推定値と実績値とを記録するようになっている。このうち、推定値はバッチ処理開始時に一斉に記録され、実績値は、各ジョブの終了時に、終了したジョブの推定値を実績値に書き換えると共に、その書き換えに伴って後続ジョブの値を計算し直して記録するようになっている。
【0052】
さらに、クリティカルジョブ管理テーブルT11は、図14に示すように、クリティカルパス上のジョブ、即ちその終了時刻が特定ジョブの開始時刻に影響を及ぼすジョブであると判定されたジョブについて、特定ジョブが目標終了時刻までに終了することに関し、どのような状況にあるかを示すステータスを記録するようになっている。
【0053】
次に、上記各プログラムの動作を示すフローチャートを参照して、本実施の形態に係るシステムの具体的動作を説明する。
【0054】
図15に示すフローチャートは、図1の終了時刻推定プログラムP6の動作を示すもので、このプログラムP6は当該バッチ処理の開始時に実行され、次のように動作する。
【0055】
まず、ステップS1で、図5のジョブ開始管理テーブルT3から、スタートジョブ、即ちJOB−01の後続ジョブを取得する。この例の場合、JOB−02以下、JOB−11まで、図2に示す全てのジョブはJOB−01の終了が起動の条件となる後続ジョブであり、したがって、このステップS1で、JOB−02〜JOB−11が取得されることになる。
【0056】
次に、ステップS2で、図6のジョブ・ファイル関連テーブルT4から、上記スタートジョブ及び後続ジョブの入出力ファイルを取得する。即ち、JOB−01の入力ファイルはFILE−01、02で、出力ファイルはFILE−03であり、JOB−02の入力ファイルはFILE−03で、出力ファイルはFILE−04〜08である、といった情報を取得する。
【0057】
次に、ステップS3で、スタートジョブに入力される基準ファイルの既知のレコード件数と、図8のファイル平均実績テーブルT6に記録されている各ファイルの平均レコード件数とから、今回の処理時における各ファイルのレコード件数を推定する。
【0058】
つまり、スタートジョブに入力されるファイル(FILE−01、FILE−02)以外については、実際にジョブを実行するまではレコード件数が不明であるので、処理の開始前に、先月の平均実績データと今回の基準ファイルのレコード件数とから、各ファイルのレコード件数を推定するのであり、図に示す例の場合、FILE−01を基準ファイルとして、先月のその平均レコード件数は900件(図8参照)、今回のレコード件数は950件(図12参照)であるから、FILE−03以下の各ファイルのレコードの推定件数は、図8の平均レコード件数に、950/900を掛けた値となる。
【0059】
そして、このようにして得られたFILE−03以下の各ファイルの推定レコード件数と、FILE−01、FILE−02の既知のレコード件数とを図12のファイル実行履歴テーブルT9に記録する。なお、その記録結果は、図12(A)に示すようになる。
【0060】
次に、フローチャートのステップS4で、上記のようにして求めた各ファイルのレコード件数と、ステップS2で取得した各ジョブの入出力ファイルとから、各ジョブの推定処理件数、即ち各ジョブの入力ファイルのレコード件数と出力ファイルのレコード件数との和を算出する。
【0061】
この計算は、例えばJOB−01の場合、入力ファイルはFILE−01とFILE−02であり、出力ファイルはFILE−03であるから、図12からこれらの3つのファイルのレコード件数「950」、「120」、「211.1」を取得する。そして、これらの和としての推定処理件数「1281」を得、以下同様にして、各ジョブの推定処理件数を算出する。
【0062】
また、ステップS5で、上記のようにして得られた各ジョブの推定処理件数から、各ジョブの推定処理時間を算出する。この処理は、当該終了時刻推定プログラムP6でサブルーチンとして用いられる処理時間算出プログラムP8により、次のように行われる。
【0063】
即ち、図16にフローチャートを示すように、まずステップS11で、図10のジョブ平均実績テーブルT8から当該ジョブについての平均処理件数、平均処理時間及び処理時間変化率の各データを読み込む。そして、ステップS12で、これらのデータと、図15のフローチャートの上記ステップS4で求めた当該ジョブの推定処理件数とから、そのジョブの推定処理時間を算出する。上記各データは、各ジョブについての図11に示す関係式[Y=a(X−X0)+Y0]を特定するものであり、例えばJOB−01の場合、
Y=0.0041667×(X−1200)+10
となる。
【0064】
そして、図17に示すように、この式のXにJOB−01の今回の推定処理件数である「1281」を入力し、Y=10.34を得る。つまり、今回のJOB−01の推定処理時間は「10分20秒」となる。以下同様にして、ステップS4で求めた推定処理件数と、図10のジョブ平均実績テーブルT8とから、各ジョブの推定処理時間を算出し、ステップS6で、これらの値を図13に示すジョブ実行履歴テーブルT10の推定欄の該当ジョブのレコードに記録する。
【0065】
次に、図15のフローチャートのステップS7で、上記スタートジョブの予め設定された開始時刻と、ジョブ開始管理テーブルT3に記録されている各ジョブの実行順序と、上記のようにして求めた各ジョブの推定処理時間とから、各ジョブの推定開始時刻及び推定終了時刻とを求める。
【0066】
その場合に、上記ジョブ開始管理テーブルT3に設定開始時刻が定められているジョブについては、その起動条件となる先行ジョブの推定終了時刻と設定開始時刻のうちの遅いほうの時刻を選択し、その時刻を当該ジョブの推定開始時刻とする(図13の推定開始時刻欄の網掛け部参照)。
【0067】
そして、ステップS8で、上記のようにして求めた各ジョブの推定開始時刻と推定終了時刻とを、上記ジョブ実行履歴テーブルT10の推定欄の該当ジョブのレコードに記録する。
【0068】
このようにして、各ジョブの推定処理件数、推定処理時間、推定開始時刻及び推定終了時刻が全て求められることになり、図10(A)に示すように、ジョブ実行履歴テーブルT10の推定欄が全て埋められることになる。
【0069】
その場合に、図示の例では、JOB−02の終了が起動条件となる4つのジョブJOB−03、04、05、06のうち、ジョブ開始管理テーブルT3に設定開始時刻が記録されているJOB−03、06については、推定開始時刻はJOB−02の推定終了時刻「21時15分28秒」ではなく、上記ジョブ開始管理テーブルT3に設定された設定開始時刻、即ちJOB−03についは「21時25分」、JOB−06については「21時30分」とされており、例えば外部からファイルの伝送を待つために、少なくともその設定開始時刻まで待って開始するものとして、それ以降の各ジョブの推定開始時刻及び推定終了時刻を算出している。
【0070】
そして、ステップS9で、上記のようにして全て埋められたジョブ実行履歴テーブルT10の推定欄のデータを実績欄に複写し、当該バッチ処理の開始時に、図13(A)に示すように、ジョブ実行履歴テーブルT10の全体が完成される。
【0071】
以上のような処理の後、ステップS10で、クリティカルジョブを判定し、そのジョブのステータスを設定する。この処理は、当該終了時刻推定プログラムP6でサブルーチンとして用いられるクリティカルジョブ判定プログラムP9により、次のように行われる。
【0072】
即ち、図18にフローチャートを示すように、まずステップS21で、目標終了時刻管理テーブルT2に目標終了時刻等が登録されている特定ジョブについて、ジョブ実行履歴テーブルT10の実績欄のデータから、特定ジョブのクリティカルパスを判定する。
【0073】
この判定は、特定ジョブに至るパスをスタートジョブ側に遡ったときに複数のパスに分岐する場合、即ちスタートジョブ側から特定ジョブ側に向かって見れば複数のパスの合流部がある場合に、その合流部直前の各パス上のジョブの実績終了時刻を比較することにより行われ、該実績終了時刻の遅い方のジョブが存在するパスがクリティカルパスであると判定する。
【0074】
今、JOB−11が特定ジョブであり、そのクリティカルパスを判定するものとすると、図2のジョブネットの構成からJOB−08が存在するパスとJOB−09が存在するパスのいずれか一方がクリティカルパスとなるが、図13(A)のジョブ実行履歴テーブルT10の実績終了時刻のデータによれば、JOB−08の実績終了時刻は「21時46分18秒」、JOB−09の実績終了時刻は「21時20分53秒」であるから、JOB−08が存在するほうのパスがクリティカルパスとなる。そして、このパス上の全てのジョブ、即ち、JOB−01、02、04、08が、特定ジョブであるJOB−11のクリティカルジョブとなる。
【0075】
次に、ステップS22で、上記ジョブ実行履歴テーブルT10の実績欄から特定ジョブの実績終了時刻を取得し、次いでステップS23で、この実績終了時刻と、上記目標終了時刻管理テーブルT2から取得した目標終了時刻(遅延注意時刻)及び遅延危険時刻とを比較する。
【0076】
そして、実績終了時刻が遅延注意時刻よりも前であれば、ステップS24からステップS26を実行して、当該特定ジョブ及び上記クリティカルパス上でこれに先行するクリティカルジョブのステータスを全て「安全」とする。また、実績終了時刻が遅延注意時刻よりも後であるが、遅延危険時刻よりも前であれば、ステップS24、S25からステップS27を実行して、上記特定ジョブ及びクリティカルジョブのステータスを全て「注意」とし、さらに、実績終了時刻が遅延危険時刻よりも後であれば、ステップS24、S25からステップS28を実行して、上記特定ジョブ及びクリティカルジョブのステータスを全て「危険」とする。
【0077】
そして、ステップS29で、上記のようにして判定したクリティカルジョブと、該クリティカルジョブ及び特定ジョブのステータスとを、図14のクリティカルジョブ管理テーブルT11に記録する。
【0078】
なお、上記例の場合、図13(A)に示すように、特定ジョブであるJOB−11の実績終了時刻は「22時2分33秒」であり、これを目標終了時刻管理テーブルT2に記録されている時刻と比較すると、この時刻は遅延注意時刻と遅延危険時刻との間にあるから、ステータスは「注意」となる。したがって、クリティカルジョブ管理テーブルT11には、該特定ジョブ(JOB−11)、及びこれに対するクリティカルジョブ(JOB−01、02、04、08)のステータスとして、全て「注意」が記録される。
【0079】
次に、図19に示すフローチャートについて説明すると、このフローチャートは、図1に示す終了時刻更新プログラムP7の動作を示すもので、当該バッチ処理の開始後、各ジョブの終了時に、上記ジョブ実行履歴テーブルT10の実績欄のデータを、終了したジョブの実績データに基づいて順次更新するように動作する。
【0080】
まず、ステップS31で、終了したジョブの出力ファイルに生成されたレコード件数を取得し、これを図12のファイル実行履歴テーブルT9の当該ファイルのレコードに記録する。この場合、実際には、バッチ開始時に全ファイルのレコード件数が算出されて記録されているから、それを実績値に書き換えることになり、図12(B)には、JOB−01が終了した時点で、FILE−03のレコード件数が算出値「211.1」から実績値「250」に書き換えられたことが示されている。
【0081】
次に、ステップS32で、終了したジョブの処理件数及び処理時間の実績値をジョブ実行履歴テーブルT10の当該ジョブの実績欄に書き込む。
【0082】
ここで、実績処理件数は、既知の、或いは当該ジョブの開始前に先行ジョブの出力ファイルのレコード件数として確定した入力ファイルのレコード件数と、当該ジョブの終了時に確定した出力ファイルのレコード件数の和であり、図例の場合、JOB−01の終了時点で、その入力イファイルのレコード件数は、FILE−01が「950」、FILE−02が「120」であり、出力ファイル(FILE−03)のレコード件数は、上記のようにしてファイル実行履歴テーブルT9に書き込んだ「250」であるから、ジョブ実行履歴テーブルT10のJOB−01の実績処理件数の欄には「1320」が記録される。また、実績処理時間は実測された時間であって、図例の場合、「10分25秒」がジョブ実行履歴テーブルT10のJOB−01の実績処理時間の欄に記録される。
【0083】
なお、この場合も、実績欄にはバッチ開始時に推定欄から複写されたデータが記録されているから、実際には、これらの複写されたデータを上記の実績値に書き換えることになり、以下同様である。また、図13(B)には、参考として、処理件数、処理時間、開始時刻及び終了時刻の各実績値について、推定値に対して増減した値を記載している。
【0084】
次に、ステップS33で、ジョブ開始管理テーブルT3から、終了したジョブの後続ジョブを抽出し、ステップS34で、抽出した後続ジョブの処理件数を算出すると共に、その値をジョブ実行履歴テーブルT10の当該後続ジョブの実績処理件数欄に記録する。
【0085】
今、JOB−01が終了した時点で、後続ジョブはJOB−02〜JOB−11の全てのジョブであるが、そのうち、JOB−01の終了により値が変化したFILE−03のレコード件数の影響を受けるJOB−02、03について、処理件数を具体的に計算すると、まず、JOB−02については、ジョブ・ファイル関連テーブルT4とファイル実行履歴テーブルT9とを参照すれば、入力ファイルは、FILE−03(レコード件数:250、以下同様)であり、出力ファイルは、FILE−04(105.6)、FILE−05(211.1)、FILE−06(316.7)、FILE−07(422.2)、FILE−08(527.8)であるから、処理件数は「1833」となる。
【0086】
また、JOB−03については、入力ファイルは、FILE−01(950)、FILE−03(250)、FILE−04(105.6)、FILE−05(211.1)であり、出力ファイルは、FILE−09(105.6)であるから、処理件数は「1622」となる。
【0087】
そして、このような再計算により得られた処理件数をジョブ実行履歴テーブルT10の当該後続ジョブの実績処理件数欄に記録する。なお、図13(B)には、JOB−01が終了した時点での再計算の結果として、JOB−02、03の実績処理件数がいずれも「39件」増加したことを示している。
【0088】
次に、フローチャートのステップS35で、後続ジョブの処理時間を、図16にフローチャート示す処理時間算出プログラムP8を用いて、前述の終了時刻推定時と同様にして算出する。
【0089】
ここで、処理件数が増加したJOB−02、03について、処理時間を再計算すると、まず、JOB−02については、処理件数と処理時間との関係式は、図10のジョブ平均実績テーブルT8より、
Y=0.0014706×(X−1700)+5
であるから、処理件数(X)に「1833」を代入することにより、Y=5.2、即ち、処理時間「5分12秒」が得られる。また、JOB−03については、関係式は、
Y=0.0012538×(X−1300)+3
であるから、処理件数Xに「1622」を代入することにより、Y=3.4、即ち、処理時間「3分24秒」が得られる。
【0090】
そして、ステップS36で、この再計算により得られた処理時間をジョブ実行履歴テーブルT10の当該後続ジョブの実績処理時間欄に記録する。なお、図13(B)には、JOB−01が終了した時点での再計算の結果として、JOB−02、03の実績処理時間がいずれも「4秒」増加したことを示している。
【0091】
次に、ステップS37で、上記のようにして再計算した実績処理時間に基づき、最終ジョブに至る全ての後続ジョブについて、その開始時刻と終了時刻とを再計算し、その結果をジョブ実行履歴テーブルT10の各対応するジョブのレコードの実績開始時刻欄及び実績終了時刻欄に記録する。
【0092】
上記例の場合、JOB−01の処理時間(実測値)が「5秒」増加し、JOB−02、03の再計算した実績処理時間がいずれも「4秒」増加したことに伴い、その影響を受けるジョブの実績開始時刻及び実績終了時刻も、それぞれ推定値より増加することになり、図13(B)には、JOB−01が終了した時点でのこれらの増加量が参考として記載されている。
【0093】
このようにして、各ジョブが終了するたびに、終了したジョブの実測値としての実績処理時間と、実際に生成された出力ファイルのレコード件数とに基づいて、後続の処理時間、開始時刻及び終了時刻の実績値が再計算され、ジョブ実行履歴テーブルの実績欄が書き換えられえる。
【0094】
そして、その都度、ステップS38で、前述のクリティカルジョブ判定プログラムP9により、クリティカルパスの再判定と、クリティカルジョブのステータスの再判定とを行い、クリティカルパス自体が変化したとき、及びクリティカルパスは変化しないが、クリティカルジョブのステータスが変化したときには、クリティカルジョブ管理テーブルT11の該当欄を書き換える。
【0095】
以上のようにして、当該ジョブネットについてのバッチ処理の開始時、及びバッチ処理途中の各ジョブの終了時に、特定ジョブ及びその開始時刻に影響を及ぼすクリティカルジョブについて、特定ジョブが目標終了時刻までに終了することに対する状況がステータスとして記録、更新される。
【0096】
そして、ジョブ実行プログラムP2は、各ジョブの開始時に、このステータスを参照し、他のシステムのジョブ或いは他のジョブネット上のジョブに対する当該ジョブの処理の優先度を設定する。
【0097】
即ち、ジョブ実行プログラムP2は、図21に示すフローチャートに従い、次のように動作する。
【0098】
まず、ステップS41で、上記クリティカルジョブ管理テーブルT11から今回処理を開始しようとするジョブのステータスを取得し、また、優先度管理テーブルT1から、そのジョブについて予め設定されている優先度を取得する。
【0099】
次に、ステップS42で、上記クリティカルジョブ管理テーブルT11から取得したステータスに応じて、当該ジョブの優先度を必要に応じ変更する。つまり、ステータスが「安全」の場合には優先度の変更は行わず、「注意」の場合は、優先度を予め設定されている優先度から1段階高めて、「A(普通)」→「B(やや高)」又は「B(やや高)」→「C(高)」とし、さらに、ステータスが「危険」の場合は、優先度を2段階高めて、「A(普通)」、「B(やや高)」→「C(高)」とする。
【0100】
そして、ステップS43で、上記のようにして変更した(或いは変更しなかった)優先度で当該ジョブを実行する。
【0101】
これにより、目標終了時刻が設定された特定ジョブ及びそのジョブの開始時刻に影響を及ぼすジョブについての優先度が、バッチ処理を実行しながら、各時点の状況に応じて動的に制御されることになり、特定ジョブが目標終了時刻までに終了する確率が向上することになる。
【0102】
また、以上のようなバッチ処理動作と並行して、その実績に対する統計処理作業が行われる。この処理を実行するプログラムのうち、日次処理プログラムP4は、図21に示すフローチャートに従って動作し、まずステップS51で、図7のファイル実績テーブルT5に、処理した日付とファイル名とをキーとして、各ファイルの実際に処理されたレコード件数を記録する。
【0103】
また、ステップS52で、図9のジョブ実績テーブルT7に、処理した日付とジョブ識別IDとをキーとして、各ジョブの実際の処理件数と処理時間とを記録する。
【0104】
また、月次処理プログラムP5は、図22に示すフローチャートに従って動作し、まず、ステップS61で、上記ファイル実績テーブルT5に記録されているデータに基づき、月ごとに、各ファイルの1日についての平均レコード件数を算出し、これを図8のファイル平均実績テーブルT6に記録する。
【0105】
また、ステップS62で、月ごとに、上記ジョブ実績テーブルT7に記録されているデータに基づき、各ジョブの1日についての平均処理件数及び平均処理時間とを算出すると共に、毎日の処理件数と処理時間の関係を図11に示すXY平面にプロットして、処理件数に対する処理時間の変化率を算出する。そして、ステップS63で、各ジョブについての平均処理件数、平均処理時間、及び処理時間変化率を、図10のジョブ平均実績テーブルT8に、ジョブ識別IDをキーとして記録する。
【0106】
これらの日次及び月次の統計処理によって作成されたテーブルは、前述のように、バッチ処理開始時の終了時刻推定作業、及びバッチ処理中における終了時刻更新作業において用いられる。
【0107】
なお、以上の実施の形態では、全システムが単一のコンピュータ1によって構成されているが、これをホストコンピュータと、該コンピュータとの間でデータの伝送が可能なパーソナルコンピュータとで構成することも可能である。
【0108】
つまり、図23に示すシステムは、バッチ処理を実行するホストコンピュータ11と、その目標終了時間等の設定や統計処理等に用いられるパーソナルコンピュータ12と、これらの間でデータの伝送を行う伝送システム13とを備えている。
【0109】
そして、上記ホストコンピュータ11とパーソナルコンピュータ12とに、ジョブ開始管理テーブル、ジョブ・ファイル関連テーブル、ファイル実行履歴テーブル、ジョブ実行履歴テーブル、及びクリティカルジョブ管理テーブルがそれぞれ搭載され、両コンピュータ11、12における同じテーブル同士が伝送システム13を介して、常に同じ内容に保持されるようになっている。したがって、この実施の形態に係るシステムによっても、図1に構成を示すシステムと全く同様に動作することになる。
【0110】
【発明の効果】
以上のように本発明によれば、多数のジョブがネット状に関連付けられ、かつそのうちの少なくとも1つの特定ジョブについて目標終了時刻が設定されているジョブネットを処理する場合に、各ジョブの終了時刻を推定すると共に、その推定の結果、上記特定ジョブの終了時刻が目標終了時刻よりも遅れることが判明したときには、最初に実行するジョブからその特定ジョブに至るネット上の複数のパスのうち、特定ジョブの開始時刻に影響を及ぼすクリティカルパスを判別して、そのパス上のジョブを優先的に処理するようにしたから、特定ジョブやその上位のジョブを常に一律に優先して、その他のジョブに対する処理を不必要に遅延させることを回避しながら、特定ジョブの終了が目標終了時刻よりも遅延することを効果的に防止することが可能となる。
【0111】
特に、各ジョブについての終了時刻の推定を、当該バッチ処理業務の開始時だけでなく、その実行中にも、例えば各ジョブが終了するごとに行うようにすることにより、上記特定ジョブが一層確実に目標終了時刻までに終了することになり、例えばこの特定ジョブで生成されるファイルを他の業務に用いる場合等に、その業務に支障をきたす、といったトラブルが未然に回避されることになる。
【図面の簡単な説明】
【図1】本発明に係るデータ処理システムの実施の形態の構成示すブロック図である。
【図2】同システムの処理対象の例として示すジョブネットの構成図である。
【図3】同システムで用いられる優先度管理テーブルの構成図である。
【図4】目標終了時刻管理テーブルの構成図である。
【図5】ジョブ開始管理テーブルの構成図である。
【図6】ジョブ・ファイル関連テーブルの構成図である。
【図7】ファイル実績テーブルの構成図である。
【図8】ファイル平均実績テーブルの構成図である。
【図9】ジョブ実績テーブルの構成図である。
【図10】ジョブ平均実績テーブルの構成図である。
【図11】平均処理時間算出方法の説明図である。
【図12】ファイル実行履歴テーブルの構成図である。
【図13】ジョブ実行履歴テーブルの構成図である。
【図14】クリティカルジョブ管理テーブルの構成図である。
【図15】終了時刻推定プログラムの動作を示すフローチャートである。
【図16】処理時間算出プログラムの動作を示すフローチャートである。
【図17】処理時間算出方法の説明図である。
【図18】クリティカルジョブ判定プログラムの動作を示すフローチャートである。
【図19】終了時刻更新プログラムの動作を示すフローチャートである。
【図20】ジョブ実行プログラムの動作を示すフローチャートである。
【図21】日時処理プログラムの動作を示すフローチャートである。
【図22】月次処理プログラムの動作を示すフローチャートである。
【図23】他の実施の形態のシステム構成を示すブロック図である。
【符号の説明】
1 コンピュータ
Claims (10)
- 1又は複数のジョブの終了が他の1又は複数のジョブの起動の条件となって多数のジョブがネット状に関連付けられ、かつそのうちの少なくとも1つのジョブについて目標終了時刻が設定されているジョブネットを処理対象とするバッチジョブ処理システムであって、各ジョブの終了時刻を推定する終了時刻推定手段と、最初に実行されるスタートジョブから目標終了時刻が設定された特定ジョブに至るネット上の複数のパスのうち、特定ジョブの開始時刻に影響を及ぼすクリティカルパスを判別するクリティカルパス判別手段と、上記推定手段で推定した特定ジョブの終了時刻が目標終了時刻よりも遅いときに、上記判別手段で判別したクリティカルパス上のジョブの処理の優先度を高める優先度変更手段とを有することを特徴とするバッチジョブ処理システム。
- 優先度変更手段は、終了時刻推定手段で推定した特定ジョブの終了時刻が目標終了時刻よりも遅い場合に、その遅れの程度が大きいほどクリティカルパス上のジョブの処理の優先度をより高くすることを特徴とする請求項1に記載のバッチジョブ処理システム。
- 各ジョブごとに処理件数と処理時間の実績を記録するジョブ実績記録手段が備えられていると共に、終了時刻推定手段は、各ジョブごとに、上記ジョブ実績記録手段に記録されている各ジョブの過去の実績に基づいて設定した処理件数と処理時間の関係式と、今回の処理件数とから推定処理時間を算出し、この推定処理時間と開始時刻とから終了時刻を推定することを特徴とする請求項1又は請求項2に記載のバッチジョブ処理システム。
- 各ジョブで扱うファイルのレコード件数の実績を記録するファイル実績記録手段が備えられていると共に、終了時刻推定手段は、今回の各ジョブの処理件数を、上記ファイル実績記録手段に記録されている各ファイルのレコード件数の過去の実績と、スタートジョブに入力されるファイルのレコード件数とから推定することを特徴とする請求項3に記載のバッチジョブ処理システム。
- 終了時刻推定手段は、各ジョブの終了ごとに、後続ジョブの終了時刻を推定し直し、クリティカルパス判別手段及び優先度変更手段は、各ジョブの終了ごとに、終了時刻推定手段で推定し直した終了時刻に基づいてクリティカルパス判別処理及び優先度変更処理を行うことを特徴とする請求項1から請求項4のいずれかに記載のバッチジョブ処理システム。
- 1又は複数のジョブの終了が他の1又は複数のジョブの起動の条件となって多数のジョブがネット状に関連付けられ、かつそのうちの少なくとも1つのジョブについて目標終了時刻が設定されているジョブネットを処理対象とするバッチジョブ処理プログラムであって、コンピュータを、各ジョブの終了時刻を推定する終了時刻推定手段、最初に実行されるスタートジョブから目標終了時刻が設定された特定ジョブに至るネット上の複数のパスのうち、特定ジョブの開始時刻に影響を及ぼすクリティカルパスを判別するクリティカルパス判別手段、及び、上記推定手段で推定した特定ジョブの終了時刻が目標終了時刻よりも遅いときに、上記判別手段で判別したクリティカルパス上のジョブの処理の優先度を高める優先度変更手段として機能させることを特徴とするバッチジョブ処理プログラム。
- コンピュータを優先度変更手段として機能させるときは、終了時刻推定手段で推定した特定ジョブの終了時刻が目標終了時刻よりも遅い場合に、その遅れの程度が大きいほどクリティカルパス上のジョブの処理の優先度をより高くするように機能させることを特徴とする請求項6に記載のバッチジョブ処理プログラム。
- コンピュータを、各ジョブごとに処理件数と処理時間の実績を記録するジョブ実績記録手段として機能させると共に、終了時刻推定手段として機能させるときは、各ジョブごとに、上記ジョブ実績記録手段に記録されている各ジョブの過去の実績に基づいて設定した処理件数と処理時間の関係式と、今回の処理件数とから推定処理時間を算出し、この推定処理時間と開始時刻とから終了時刻を推定するように機能させることを特徴とする請求項6又は請求項7に記載のバッチジョブ処理プログラム。
- コンピュータを、各ジョブで扱うファイルのレコード件数の実績を記録するファイル実績記録手段として機能させると共に、終了時刻推定手段として機能させるときは、今回の各ジョブの処理件数を、上記ファイル実績記録手段に記録されている各ファイルのレコード件数の過去の実績と、スタートジョブに入力されるファイルのレコード件数とから推定するように機能させることを特徴とする請求項8に記載のバッチジョブ処理プログラム。
- コンピュータを終了時刻推定手段として機能させるときは、各ジョブの終了ごとに後続ジョブの終了時刻を推定し直し、クリティカルパス判別手段及び優先度変更手段として機能させるときは、各ジョブの終了ごとに、終了時刻推定手段で推定し直した終了時刻に基づいてクリティカルパス判別処理及び優先度変更処理を行うように機能させることを特徴とする請求項6から請求項9のいずれかに記載のバッチジョブ処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003089753A JP4102695B2 (ja) | 2003-03-28 | 2003-03-28 | バッチジョブ管理システム及びバッチジョブ管理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003089753A JP4102695B2 (ja) | 2003-03-28 | 2003-03-28 | バッチジョブ管理システム及びバッチジョブ管理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004295731A true JP2004295731A (ja) | 2004-10-21 |
JP4102695B2 JP4102695B2 (ja) | 2008-06-18 |
Family
ID=33403533
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003089753A Expired - Fee Related JP4102695B2 (ja) | 2003-03-28 | 2003-03-28 | バッチジョブ管理システム及びバッチジョブ管理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4102695B2 (ja) |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007140791A (ja) * | 2005-11-16 | 2007-06-07 | Mizuho Information & Research Institute Inc | ジョブ実行管理方法、ジョブ実行管理システム及びジョブ実行管理プログラム |
JP2007300175A (ja) * | 2006-04-27 | 2007-11-15 | Mitsubishi Electric Corp | 暗号化・復号化方法及びその装置 |
JP2008287427A (ja) * | 2007-05-16 | 2008-11-27 | Ricoh Co Ltd | ジョブ稼動状況評価システム、ジョブ稼動状況評価方法及びジョブ稼動状況評価プログラム |
JP2008287509A (ja) * | 2007-05-17 | 2008-11-27 | Ricoh Co Ltd | パフォーマンス分析処理装置、パフォーマンス分析処理方法及びパフォーマンス分析処理プログラム |
JP2009043188A (ja) * | 2007-08-10 | 2009-02-26 | Nippon Shoken Technology Kk | 運用管理サポートシステム、プログラム |
JP2009258931A (ja) * | 2008-04-16 | 2009-11-05 | Nec Biglobe Ltd | 情報提供システム |
JP4565048B1 (ja) * | 2009-10-26 | 2010-10-20 | 株式会社イマジカ・ロボットホールディングス | 映像編集装置及び映像編集方法 |
JP2011113290A (ja) * | 2009-11-26 | 2011-06-09 | Nec Corp | ジョブフロー管理装置、管理方法および管理プログラム |
JP2011118794A (ja) * | 2009-12-07 | 2011-06-16 | Fujitsu Ltd | バッチジョブ処理時間推定プログラム、方法及び装置 |
JP2012038001A (ja) * | 2010-08-05 | 2012-02-23 | Fujitsu Ltd | 予測装置、予測方法、及び予測プログラム |
JP2012133724A (ja) * | 2010-12-24 | 2012-07-12 | Fujitsu Ltd | ジョブネット組替装置、ジョブネット組替プログラム及びジョブネット組替方法 |
JP2012173756A (ja) * | 2011-02-17 | 2012-09-10 | Mizuho Information & Research Institute Inc | ジョブシミュレーションシステム、ジョブシミュレーション方法及びジョブシミュレーションプログラム |
WO2012164689A1 (ja) * | 2011-05-31 | 2012-12-06 | 株式会社日立製作所 | ジョブ管理サーバ及びジョブ管理方法 |
JP2013164712A (ja) * | 2012-02-10 | 2013-08-22 | Nomura Research Institute Ltd | バッチジョブ分析装置、バッチジョブ分析方法、バッチ処理監視装置およびバッチ処理監視方法 |
JP2013205970A (ja) * | 2012-03-27 | 2013-10-07 | Fujitsu Ltd | 実行時間推定装置、プログラム、及び、実行時間推定方法 |
JP2015026197A (ja) * | 2013-07-25 | 2015-02-05 | 富士通株式会社 | ジョブ遅延検知方法、情報処理装置、およびプログラム |
US9430283B2 (en) | 2013-07-22 | 2016-08-30 | Fujitsu Limited | Information processing apparatus and job scheduling method |
EP3079111A1 (en) | 2015-04-08 | 2016-10-12 | Fujitsu Limited | System, method and device for job scheduling |
JP2016189101A (ja) * | 2015-03-30 | 2016-11-04 | 鉄道情報システム株式会社 | バッチ処理システム、バッチ処理方法、バッチ処理プログラムおよびバッチ処理プログラムが記憶されたコンピュータで読み取り可能な記憶媒体 |
JP2017068877A (ja) * | 2017-01-20 | 2017-04-06 | 株式会社三菱東京Ufj銀行 | ジョブネット管理装置及びプログラム |
JP2017091571A (ja) * | 2017-01-20 | 2017-05-25 | 株式会社三菱東京Ufj銀行 | ジョブネット管理装置及びプログラム |
JP2019040344A (ja) * | 2017-08-24 | 2019-03-14 | 富士通株式会社 | 送信制御プログラム、送信制御装置および送信制御方法 |
JP2019139262A (ja) * | 2018-02-06 | 2019-08-22 | 富士通株式会社 | 判定プログラム、判定方法、及び判定装置 |
JP2019159870A (ja) * | 2018-03-14 | 2019-09-19 | みずほ情報総研株式会社 | 影響調査システム、影響調査方法及び影響調査プログラム |
JP7449779B2 (ja) | 2020-06-03 | 2024-03-14 | 株式会社日立製作所 | ジョブ管理方法、及びジョブ管理装置 |
-
2003
- 2003-03-28 JP JP2003089753A patent/JP4102695B2/ja not_active Expired - Fee Related
Cited By (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007140791A (ja) * | 2005-11-16 | 2007-06-07 | Mizuho Information & Research Institute Inc | ジョブ実行管理方法、ジョブ実行管理システム及びジョブ実行管理プログラム |
JP2007300175A (ja) * | 2006-04-27 | 2007-11-15 | Mitsubishi Electric Corp | 暗号化・復号化方法及びその装置 |
JP2008287427A (ja) * | 2007-05-16 | 2008-11-27 | Ricoh Co Ltd | ジョブ稼動状況評価システム、ジョブ稼動状況評価方法及びジョブ稼動状況評価プログラム |
JP2008287509A (ja) * | 2007-05-17 | 2008-11-27 | Ricoh Co Ltd | パフォーマンス分析処理装置、パフォーマンス分析処理方法及びパフォーマンス分析処理プログラム |
JP2009043188A (ja) * | 2007-08-10 | 2009-02-26 | Nippon Shoken Technology Kk | 運用管理サポートシステム、プログラム |
JP2009258931A (ja) * | 2008-04-16 | 2009-11-05 | Nec Biglobe Ltd | 情報提供システム |
JP4565048B1 (ja) * | 2009-10-26 | 2010-10-20 | 株式会社イマジカ・ロボットホールディングス | 映像編集装置及び映像編集方法 |
JP2011091740A (ja) * | 2009-10-26 | 2011-05-06 | Imagica Robot Holdings Inc | 映像編集装置及び映像編集方法 |
JP2011113290A (ja) * | 2009-11-26 | 2011-06-09 | Nec Corp | ジョブフロー管理装置、管理方法および管理プログラム |
JP2011118794A (ja) * | 2009-12-07 | 2011-06-16 | Fujitsu Ltd | バッチジョブ処理時間推定プログラム、方法及び装置 |
JP2012038001A (ja) * | 2010-08-05 | 2012-02-23 | Fujitsu Ltd | 予測装置、予測方法、及び予測プログラム |
JP2012133724A (ja) * | 2010-12-24 | 2012-07-12 | Fujitsu Ltd | ジョブネット組替装置、ジョブネット組替プログラム及びジョブネット組替方法 |
JP2012173756A (ja) * | 2011-02-17 | 2012-09-10 | Mizuho Information & Research Institute Inc | ジョブシミュレーションシステム、ジョブシミュレーション方法及びジョブシミュレーションプログラム |
WO2012164689A1 (ja) * | 2011-05-31 | 2012-12-06 | 株式会社日立製作所 | ジョブ管理サーバ及びジョブ管理方法 |
JP5651772B2 (ja) * | 2011-05-31 | 2015-01-14 | 株式会社日立製作所 | ジョブ管理サーバ及びジョブ管理方法 |
US9112750B2 (en) | 2011-05-31 | 2015-08-18 | Hitachi, Ltd. | Job management server and job management method |
JP2013164712A (ja) * | 2012-02-10 | 2013-08-22 | Nomura Research Institute Ltd | バッチジョブ分析装置、バッチジョブ分析方法、バッチ処理監視装置およびバッチ処理監視方法 |
JP2013205970A (ja) * | 2012-03-27 | 2013-10-07 | Fujitsu Ltd | 実行時間推定装置、プログラム、及び、実行時間推定方法 |
US9430283B2 (en) | 2013-07-22 | 2016-08-30 | Fujitsu Limited | Information processing apparatus and job scheduling method |
JP2015026197A (ja) * | 2013-07-25 | 2015-02-05 | 富士通株式会社 | ジョブ遅延検知方法、情報処理装置、およびプログラム |
US9715409B2 (en) | 2013-07-25 | 2017-07-25 | Fujitsu Limited | Job delay detection method and information processing apparatus |
JP2016189101A (ja) * | 2015-03-30 | 2016-11-04 | 鉄道情報システム株式会社 | バッチ処理システム、バッチ処理方法、バッチ処理プログラムおよびバッチ処理プログラムが記憶されたコンピュータで読み取り可能な記憶媒体 |
EP3079111A1 (en) | 2015-04-08 | 2016-10-12 | Fujitsu Limited | System, method and device for job scheduling |
JP2017091571A (ja) * | 2017-01-20 | 2017-05-25 | 株式会社三菱東京Ufj銀行 | ジョブネット管理装置及びプログラム |
JP2017068877A (ja) * | 2017-01-20 | 2017-04-06 | 株式会社三菱東京Ufj銀行 | ジョブネット管理装置及びプログラム |
JP2019040344A (ja) * | 2017-08-24 | 2019-03-14 | 富士通株式会社 | 送信制御プログラム、送信制御装置および送信制御方法 |
JP2019139262A (ja) * | 2018-02-06 | 2019-08-22 | 富士通株式会社 | 判定プログラム、判定方法、及び判定装置 |
JP7056193B2 (ja) | 2018-02-06 | 2022-04-19 | 富士通株式会社 | 判定プログラム、判定方法、及び判定装置 |
JP2019159870A (ja) * | 2018-03-14 | 2019-09-19 | みずほ情報総研株式会社 | 影響調査システム、影響調査方法及び影響調査プログラム |
JP7449779B2 (ja) | 2020-06-03 | 2024-03-14 | 株式会社日立製作所 | ジョブ管理方法、及びジョブ管理装置 |
Also Published As
Publication number | Publication date |
---|---|
JP4102695B2 (ja) | 2008-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004295731A (ja) | バッチジョブ管理システム及びバッチジョブ管理プログラム | |
JP3735028B2 (ja) | 作業フロー計画を目標完結時間に基づいて最適化する方法および装置 | |
JP4707603B2 (ja) | リアルタイムosにおける処理時間配分方法 | |
JP2010079726A (ja) | 動的再構成支援プログラム、動的再構成支援装置および動的再構成支援方法 | |
JP2008009809A (ja) | データベース同期処理プログラム | |
JP2005049922A (ja) | ジョブ実行計画の評価システム | |
JP2008242524A (ja) | ファイル管理装置、ファイル管理方法、プログラム、コンピュータ読み取り可能な記録媒体 | |
JP2002182932A (ja) | ジョブキュー多重度制御装置 | |
JPH04307672A (ja) | 概略配線処理方式 | |
JP2000056989A (ja) | タスク設計方法 | |
US20080228780A1 (en) | Information processing apparatus, information processing method, and information processing program | |
JP2004046713A (ja) | 工程設計装置、工程設計方法、工程設計プログラム、および、プログラム記録媒体 | |
JP5614279B2 (ja) | ジョブネット組替装置、ジョブネット組替プログラム及びジョブネット組替方法 | |
JPH0973407A (ja) | データ管理装置 | |
JP2570018B2 (ja) | ロック区間の自動解析方法及びロック時間の計算方法 | |
EP4202675A1 (en) | Information processing device, information processing method, and information processing program | |
WO2021015203A1 (ja) | ダイジェスト値計算装置、アクセス装置、ダイジェスト値計算方法、アクセス方法及びプログラム | |
JP3075929B2 (ja) | ジョブ管理方法 | |
JP2001142757A (ja) | 処理対象ファイルの付名方法 | |
JP2005352762A (ja) | ダウンロード方法 | |
JP2002006929A (ja) | 進度予測システム | |
JPH02189658A (ja) | キャッシュメモリ | |
JP2006099250A (ja) | リードタイム・歩留り管理プログラム | |
JPH04333102A (ja) | Ncプログラム管理方式 | |
JP2024047188A (ja) | ジョブ管理装置、ジョブ管理方法、及び、ジョブ管理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060324 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070709 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070724 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070919 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080318 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080324 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110328 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110328 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |