JP5033745B2 - ジョブ管理システム及びジョブ管理方法 - Google Patents

ジョブ管理システム及びジョブ管理方法 Download PDF

Info

Publication number
JP5033745B2
JP5033745B2 JP2008241022A JP2008241022A JP5033745B2 JP 5033745 B2 JP5033745 B2 JP 5033745B2 JP 2008241022 A JP2008241022 A JP 2008241022A JP 2008241022 A JP2008241022 A JP 2008241022A JP 5033745 B2 JP5033745 B2 JP 5033745B2
Authority
JP
Japan
Prior art keywords
job
file
processing
input
attribute
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.)
Expired - Fee Related
Application number
JP2008241022A
Other languages
English (en)
Other versions
JP2010073015A (ja
Inventor
拓伸 原園
真 上田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Systems Ltd
Original Assignee
Hitachi Systems Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Systems Ltd filed Critical Hitachi Systems Ltd
Priority to JP2008241022A priority Critical patent/JP5033745B2/ja
Publication of JP2010073015A publication Critical patent/JP2010073015A/ja
Application granted granted Critical
Publication of JP5033745B2 publication Critical patent/JP5033745B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、コンピュータ処理におけるパイプを利用したジョブ制御を自動的に行うジョブ管理システム及びジョブ管理方法に係り、特にプロセス間のデータ引継ぎによる異常終了を防止したジョブ管理システム及びジョブ管理方法に関する。
一般にメインフレームコンピュータにおいて行われるプログラムのバッチ処理は、JCL(ジョブ制御言語)を用いてジョブステップ(ジョブを構成する最小単位となる処理プログラム)を組み合わせたジョブを構成しておき、オペレータがジョブを投入すると、メインフレームコンピュータが前記JCLを解釈し、ジョブを実行することによって行われる。
このジョブの実行は、前述したジョブステップを指定の順番(並列処理を含む)に起動することによって行われる。ジョブステップは、非同期並列処理を行うために、プロセス(OSからプロセス空間であるメモリリソースの割り当てを受けて処理を実行しているプログラムのこと。通常、プロセスは互いに影響を与えないように動作する)として起動される。ジョブのフローでは、あるジョブステップの出力が別のジョブステップの入力になることがあるため、プロセス間でデータを引継ぐ必要があるが、その方式にはファイル処理を用いる場合と、パイプ処理を用いる場合があり、この指定はJCLにて行う。尚、パイプ処理とは、プログラム同士を組み合わせて利用するための一手法であって、1つのプロセス空間内における、ある処理の出力を別の処理の入力とする処理のことを言い、ファイル処理とは、あるプロセスが記憶装置に一旦ファイルを記憶させることによって、他のプロセスからのアクセスを許す処理を意味する。
このパイプ処理は、例えば図10に示す如く、ある出力プロセス201から出力されたデータをパイプ202のバッフア203の所定の領域(図10の例では「n+3件目」)に書きだし、「n件目」のデータを次の入力プロセス204が読み込む処理を意味し、次の特徴がある。
(1)データはFIFO(First In, First Out)の取り出し方式であり、バッファ203に入った順番で取り出される。
(2)出力プロセス201から出力されたデータは、バッファ203に保持される。
(3)入力プロセス204に読みこまれたデータはバッファ203から消去される。
(4)バッファ203に空きがなくなると、出力プログラムはバッファ203に空きが出るまで処理が停止する。
このパイプ処理を用いたデータ引継ぎには次の利点がある。
(4)ディスクI/Oが発生しないために高速。この理由は、外部記憶装置とのファイルI/O(ディスクI/O)は、主記憶装置(メモリ)へのI/Oやソケット通信(特に同一マシン上でのプロセス間通信としてのソケット通信)に対して低速のためである。
(5)入出力の依存関係がある複数のプロセスは並列実行可能。
(6)ファイル処理を用いた方法では、外部記憶装置へのファイル出力が全て完了しないと、それを入力とするジョブステップの起動ができないため、逐次処理にせざるを得ない。これに対し、パイプ処理を用いた方法ではファイル単位ではなく、ファイルを構成するデータの単位であるレコード単位にデータの入出力を行い、出力プロセスがバッファに出力したレコードを次の入力プロセスが読み込んで処理を行うことで並列実行が可能になる。
この並列実行処理は、図11に示す如く、2つのパイブ221と224とが有り、相互に入出力関係があるプロセス220とプロセス223とプロセス225とが同時に起動され、プロセス220の出力がパイプ221のバッファ222に書き込まれると、プロセス223がパイプ221のバッファ222の「n件目」のデータを読み込み、このデータを処理してパイプ224のバッファ226に出力を書きみ、このプロセス223の出力がパイプ224に書き込まれると、プロセス225がパイプ224のバッファ226の「n件目」のデータを読み込む様に動作し、これらの動作によってプロセスが並列実行される。
尚、前記パイプ処理に関する技術が記載された文献としては下記特許文献1が挙げられ、この特許文献1には、入力プロセスが複数の場合や中間データを保存する場合、処理結果であるデータを出力する第1プロセス及び該第1プロセスが出力したデータを引き継いで処理を行う第2プロセスのいずれからもアクセス可能なバッファを設け、第1プロセスから出力されたデータを前記バッファに順次書き込む工程と、該バッファに書き込まれたデータを前記第2プロセスに読み込ませる工程と、前記第1プロセスにより書き込んだデータがバッファから全て第2プロセスに読み込ませたとき、バッファ領域を開放する工程とを実行することが記載されている。
特開平7−262024号公報
前述の図11にて説明した並列実行処理は、パイプ処理におけるバッファサイズには制限があるため、出力するバッファが全て埋まった場合、後続ジョブステップに読み取られることでバッファが空くまで出力プロセスの処理が停止する可能性があった。
この不具合を具体的に説明する。まず、メインフレーム時代のJCLによる制御では、データの引継ぎ方式をJCL上で指定している。C/S型システムで実現しているパイプ処理引継ぎ方式でも、パイプ化するファイル処理をユーザが指定しなければならないことは同様であり、JCLによるメインフレーム時代と本質的に同義である。この場合、JCL作成者がパイプ処理を指定すべきかファイル処理を指定すべきかを判断し、誤りなく指定する必要がある。また、性能を最大限に上げるには、パイプ処理を指定できる個所を漏れなく指定する必要がある。これを実現するには、JCL作成者はジョブステップ間の入出力関係を全て分析し、出力ジョブステップが停止しない個所を特定しなければならない。この作業は難しく、また面倒なものなので、実際にはパイプ処理の有効性を理解しているエンジニアでもパイプ処理指定を行わないか、確実性が保証されている個所にしか指定しないことが多い。
この自動化にあたっては次の2点の課題があり、従来技術においては何れの課題も考慮していないと言う不具合があった。
(a)処理停止を回避すること。すなわち、パイプ処理にしてはいけない個所をパイプ処理指定しないようにすること。ここでいう処理停止とは、1つのプロセスに対する複数の入力の何れかが、他の入力を待つことによって処理が停止してしまうことを指し、この停止処理を図12を参照して説明する。
図12は、複数のパイプ55〜58とから構成されるシステムを示し、プロセス51の出力データをパイプ55又はパイプ56を介してプロセス52及びプロセス53が受け取り、プロセス52の出力データをプロセス54がパイプ57を介して受け取り、プロセス53の出力をプロセス54がパイプ57を介して受け取る構成を示している。
この構成のシステムは、プロセス51の出力がプロセス52側へ集中した場合、プロセス53は入力があるまで待ち状態となり、このためプロセス54がプロセス53からのデータ入力がないために待ち状態となり、パイプ57からのデータを読み込まなくなる。従って、パイプ57からデータがプロセス54に読み込まれないため、パイプ57のバッファ63が全て埋まった段階で前段のプロセス52は待ち状態になり、パイプ55からの入力を読み込まず、パイプ55からデータが読み込まれないため、パイプ55のバッファ61が全て埋まった段階でプロセス51は待ち状態になる。こうして、全てのプロセスが待ち状態になり、処理停止となる可能性があった。
(b)処理順序を最適化すること。ファイル処理とパイプ処理を混在させ、実行可能状態のジョブステップを全て即時実行した場合、入力ファイルが存在しないプロセスが存在し、異常終了してしまう可能性があり、この異常終了を図13を参照して説明する。
図13は、プロセス51からの出力データ61をプロセス53に入力し、プロセス52からの出力データ62をプロセス53に入力し、これら両データを入力したプロセス53が処理を実行する構成を示している。
この構成のシステムは、プロセス51とプロセス52とプロセス53とを同時実行してしまうと、プロセス53の入力のうちデータ61をプロセス51の処理が終わるまでプロセス53が読み込めないため、プロセス53は入力ファイルの一部が存在しないプロセスとなってしまい、異常終了してしまう可能性があった。
前述のパイプ処理による異常終了を防止するためには、オペレータがファイル処理を行うファイル処理とパイプ処理を行うファイルとを予め解析して設定しておかなければならず、このファイル処理とパイプ処理を大量の処理過程にわたって解析及び設定する作業がオペレータの多大な作業負担になると言う不具合があった。
これを具体的に説明すると、JCL(ジョブ制御言語)を用いてジョブステップを組み合わせたジョブが、図14(a)に示したジョブ制御ファイル10の如く、実行プログラム名と、実行するジョブステップ名と、該ジョブステップに入力する入力ファイル情報と、該ジョブステップから出力される出力ファイル情報との各情報を格納した形式で表され、例えば、このジョブにより形成される処理ツリーが、図14(b)に示す如く、jobstep1(符号51)がfile63及び64を出力し、jobstep2(符号65)が前記file1を入力してfile3(符号67)を出力し、jobstep3(符号66)が前記file21を入力してfile4(符号68)を出力するであり、file2がパイプ処理すべきデータであり、ファイル記述のデフォルトがファイル処理の場合、図14(a)の「出力ファイル2」の記述に示す如く、file2の属性として「pipe=on」の記述を加入しなければならず、多量のファイルを取り扱うジョブにおいては前述したオペレータによるファイル処理とパイプ処理との解析並びに設定が煩雑であり、これら作業がオペレータの多大な作業負担になると言う不具合があった。
本発明は、プロセス間のデータ引継ぎ方式の指定を自動化かつ最適化し、JCL作成者の工数削減を実現するジョブ管理システム及びジョブ管理方法を提供することである。
前記目的を達成するために本発明は、プロセスが実行する複数のジョブステップと該ジョブステップによりプロセスから入出力されるファイルとを記述した入力ジョブ制御ファイルを入力とし、該入出力ファイルをプロセスがパイプ処理を行うかファイル処理を行うかの属性を付与した属性付きジョブ制御ファイルを出力するジョブ管理サービスと、該ジョブ管理サービスから出力された属性付きジョブ制御ファイルのファイル属性を含むジョブステップを実行するジョブ実行制御部とを備えるジョブ管理システムであって、
該ジョブ管理サービス部が、
前記入力ジョブ制御ファイルを入力とし、該入力ジョブ制御ファイルに含まれるジョブステップの入力ファイルが経由する他のジョブステップを経由ジョブステップとしてセットする第1工程と、
該第1工程により経由ジョブステップをセットしたジョブステップにパイプ属性をセットする第2工程と、
該第2工程によりパイプ属性をセットしたジョブステップの入力ファイルの数が単数か否かを判定する第3工程と、
該第3工程により入力ファイルの数が単数でないと判定したジョブステップの属性をファイル処理に設定する第4工程と、
前記第3工程により入力ファイルの数が単数と判定したジョブステップの属性をパイプ処理に維持する設定を行う第5工程と、
前記ジョブ実行制御部が、
前記第4工程及び第5工程により設定したジョブステップを含む属性付きジョブ制御ファイルを入力とし、該入力した属性付きジョブ制御ファイルのファイル属性を含むジョブステップを実行する第6工程とを実行することを第1の特徴とする。
また本発明は、該第1の特徴のジョブ管理システムにおいて、前記ジョブ管理システムが、ジョブステップを統合するグループ化アルゴリズム機能部を含み、該グループ化アルゴリズム機能部が、
前記第4工程に続き、
前記第4工程及び第5工程により設定した複数のジョブステップに処理グループ番号を付与する第7工程と、
該第7工程により処理グループ番号を付与したジョブステップに、該ジョブステップに入力するファイルを出力するジョブステップの内包ジョブステップ番号を付与する第8工程と、
該第8工程による内包ジョブステップ番号が共通するジョブステップを、同一の処理グループ番号の処理グループに統合する第9工程と、
該第9工程により統合した処理グループ番号のジョブステップの内包ジョブステップの入力ファイル属性が全てパイプ処理か否かを判定し、内包ジョブステップの入力ファイル属性が全てパイプ処理と判定したとき、該入力ファイル属性が全てパイプ処理と判定したジョブステップのみを統合する第10工程と、
該第10工程に統合したジョブステップと前記第5工程により設定したジョブステップを含む属性付きジョブ制御ファイルを前記ジョブ実行制御部に出力する第11工程とを実行することを第2の特徴とする。
また本発明は、該第2の特徴のジョブ管理システムにおいて、前記グループ化アルゴリズム機能部が、前記第9工程により統合した入力ファイル属性が全てパイプ処理と判定したジョブステップの統合を行うとき、前記処理グループ番号の値が大きいジョブステップに、該処理グループ番号の値が大きいジョブステップに比べて処理グループ番号の値が小さいジョブステップを統合する第12工程を実行することを第3の特徴とする。
また本発明は、前記第3の特徴のジョブ管理システムにおいて、前記グループ化アルゴリズム機能部が、前記第12工程により統合した処理グループ番号の値が小さいジョブステップの処理グループ番号を削除する第13工程を実行することを第4の特徴とする。
また本発明は、前記何れかの特徴のジョブ管理システムにおいて、前記ジョブ実行制御部が、前記属性付きジョブ制御ファイルのファイル属性の記述がないジョブステップをファイル処理と判定し、パイプ処理との属性が記述されているジョブステップをパイプ処理と判定して、ジョブステップを実行することを第5の特徴とする。
更に本発明は、プロセスが実行する複数のジョブステップと該ジョブステップによりプロセスから入出力されるファイルとを記述した入力ジョブ制御ファイルを入力とし、該入出力ファイルをプロセスがパイプ処理を行うかファイル処理を行うかの属性を付与した属性付きジョブ制御ファイルを出力するジョブ管理サービスと、該ジョブ管理サービスから出力された属性付きジョブ制御ファイルのファイル属性を含むジョブステップを実行するジョブ実行制御部とを備えるジョブ管理システムのジョブ実行方法であって、
該ジョブ管理サービス部に、
前記入力ジョブ制御ファイルを入力とし、該入力ジョブ制御ファイルに含まれるジョブステップの入力ファイルが経由する他のジョブステップを経由ジョブステップとしてセットする第1工程と、
該第1工程により経由ジョブステップをセットしたジョブステップにパイプ属性をセットする第2工程と、
該第2工程によりパイプ属性をセットしたジョブステップの入力ファイルの数が単数か否かを判定する第3工程と、
該第3工程により入力ファイルの数が単数でないと判定したジョブステップの属性をファイル処理に設定する第4工程と、
前記第3工程により入力ファイルの数が単数と判定したジョブステップの属性をパイプ処理に維持する設定を行う第5工程とを実行させ、
前記ジョブ実行制御部に、
前記第4工程及び第5工程により設定したジョブステップを含む属性付きジョブ制御ファイルを入力とし、該入力した属性付きジョブ制御ファイルのファイル属性を含むジョブステップを実行する第6工程とを実行させることを第6の特徴とする。
また本発明は、該第6の特徴のジョブ管理方法において、前記ジョブ管理システムが、ジョブステップを統合するグループ化アルゴリズム機能部を含み、該グループ化アルゴリズム機能部に、
前記第4工程に続き、
前記第4工程及び第5工程により設定した複数のジョブステップに処理グループ番号を付与する第7工程と、
該第7工程により処理グループ番号を付与したジョブステップに、該ジョブステップに入力するファイルを出力するジョブステップの内包ジョブステップ番号を付与する第8工程と、
該第8工程による内包ジョブステップ番号が共通するジョブステップを、同一の処理グループ番号の処理グループに統合する第9工程と、
該第9工程により統合した処理グループ番号のジョブステップの内包ジョブステップの入力ファイル属性が全てパイプ処理か否かを判定し、内包ジョブステップの入力ファイル属性が全てパイプ処理と判定したとき、該入力ファイル属性が全てパイプ処理と判定したジョブステップのみを統合する第10工程と、
該第10工程に統合したジョブステップと前記第5工程により設定したジョブステップを含む属性付きジョブ制御ファイルを前記ジョブ実行制御部に出力する第11工程とを実行させることを第7の特徴とする。
また本発明は、前記第7の特徴のジョブ管理方法において、前記グループ化アルゴリズム機能部に、前記第9工程により統合した入力ファイル属性が全てパイプ処理と判定したジョブステップの統合を行うとき、前記処理グループ番号の値が大きいジョブステップに、該処理グループ番号の値が大きいジョブステップに比べて処理グループ番号の値が小さいジョブステップを統合する第12工程を実行させることを第8の特徴とする。
また本発明は、前記第8の特徴のジョブ管理方法において、前記グループ化アルゴリズム機能部に、前記第12工程により統合した処理グループ番号の値が小さいジョブステップの処理グループ番号を削除する第13工程を実行させることを第9の特徴とする。
また本発明は、前記第6から第9何れかの特徴のジョブ管理方法において、前記ジョブ実行制御部に、前記属性付きジョブ制御ファイルのファイル属性の記述がないジョブステップをファイル処理と判定し、パイプ処理との属性が記述されているジョブステップをパイプ処理と判定し、ジョブステップを実行させることを第10の特徴とする。
本発明によるジョブ管理システム及びジョブ管理方法は、ジョブ管理サービス部が、入力ファイルが他のジョブステップを経由する経由ジョブステップをセットしたジョブステップにパイプ属性をセットし、該経由ジョブステップをセットしたジョブステップの入力ファイルの数が単数でないと判定したジョブステップの属性をファイル処理に設定変更することによって、入力ファイルが複数ジョブステップのみをパイブ処理の属性に変更し、ファイル処理とパイプ処理の属性を付与した属性付きジョブ制御ファイルを生成し、ジョブを停止処理が発生することなく実行することができる。また属性にパイプ処理が設定されたジョブステップに処理グループ番号を付し、該処理グループ番号が比較的大きいジョブステップに処理グループ番号が比較的小さいジョブを統合することによって、実行順序を適正化してプロセス間のデータ引継ぎによる異常終了を防止した属性付きジョブ制御ファイルを生成し、実行することができる。
以下、本発明によるジョブ管理システム及びジョブ管理方法の一実施形態を図面を参照して詳細に説明する。図1は、本発明の一実施形態によるジョブ管理方法が適用されるジョブ管理システムの全体構成を示す図、図2は本発明の第1の本実施形態によるジョブ制御ファイルを示す図、図3本実施形態による処理ツリーを示す図、図4は本実施形態によるファイル化アルゴリズムのフローチャート図、図5は第2の実施形態によるジョブ制御ファイルを示す図、図6は本実施形態による処理ツリーを示す図、図7は本実施形態によるグループ化アルゴリズムを示す図、図8は本実施形態によるグループ化完了時の状態を説明するための図、図9は本実施形態によるグループ統合完了時の状態を説明するための図である。
[構成]
本発明の一実施形態によるジョブ管理システム及びジョブ管理方法を実現するコンピュータシステムは、図1に示す如く、ジョブ制御ファイル10を読み込み、本実施形態の特徴である処理停止状態を回避するジョブ管理方法を実行するジョブ管理サービス機能部20と、該ジョブ管理サービス機能部20により変更されたジョブデータを実行し、その実行結果であるジョブ40を出力するジョブ実行制御部30とから構成される。これらジョブ管理サービス機能部20及びジョブ実行制御部30は、コンピュータのハードウェア又はソフトウェアによって構成される。
本発明の第1の実施形態の対象となるジョブ制御ファイル10は,図2に示す如く,ジョブステップ名「JOBSTEP」の「jobstep1」のジョブが、プログラム名「PGM」として「PG1」、入力ファイル「IFILE01」として「file0」、第1の出力ファイル「OFILE01」として「file1」、第2の出力ファイル「OFILE02」として「file2」が設定され、同様に、ジョブステップ名「JOBSTEP」の「jobstep2」のジョブが、プログラム名「PGM」として「PG2」、入力ファイル「IFILE01」として「file1」、出力ファイル「OFILE01」として「file3」が設定され、ジョブステップ名「JOBSTEP」の「jobstep3」のジョブが、プログラム名「PGM」として「PG3」、入力ファイル「IFILE01」として「file2」、出力ファイル「OFILE01」として「file4」が設定され、ジョブステップ名「JOBSTEP」の「jobstep4」のジョブが、プログラム名「PGM」として「PG4」、第1の入力ファイル「IFILE01」として「file3」、第2の入力ファイル「IFILE02」として「file5」、出力ファイル「OFILE01」として「file5」を設定記述している。このように本実施形態の対象となるジョブ制御ファイル10は、前述したパイプ処理かファイル処理かを意識せずにオペレータがプログラム使用のフローチャート等を基に作成したものである。
図2に示したジョブ制御ファイル10の処理ツリーは、図3に示す如く、「file0」(符号70)を「jobstep1」(符号71)が読み込んだとき、該「jobstep1」が、「file1及び2」(符号72,73)を出力し、前記「file1」を読み込んだ「jobstep2」(符号74)が「file3」(符号76)を出力し、前記「file2」を読み込んだ「jobstep3」(符号75)が「file4」(符号77)を出力し、これら出力された「file3及び4」(符号76,77)を読み込んだ「jobstep78」(符号78)が「file5」(符号79)を出力する様に構成される。本例においては、「file1及び2」をファイル処理の対象とし、他の「file」をパイプ処理の対象とする必要があるものとし、詳細は後述する。
また本発明の第2の実施形態の対象となるジョブ制御ファイル10は,図5に示す如く,図2に示した定義ファイル同様に、ジョブステップ名「JOBSTEP」の「jobstep1」のジョブが、プログラム名「PGM」として「PG1」、入力ファイル「IFILE01」として「file0」、出力ファイル「OFILE01」として「file1」が設定され、ジョブステップ名「JOBSTEP」の「jobstep2」のジョブが、プログラム名「PGM」として「PG2」、入力ファイル「IFILE01」として「file1」、出力ファイル「OFILE01」として「file2」が設定され、ジョブステップ名「JOBSTEP」の「jobstep3」のジョブが、プログラム名「PGM」として「PG3」、入力ファイル「IFILE01」として「file1」、第1の出力ファイル「OFILE01」として「file3−1」、第2の出力ファイル「OFILE02」として「file3−2」が設定され、ジョブステップ名「JOBSTEP」の「jobstep4」のジョブが、プログラム名「PGM」として「PG4」、入力ファイル「IFILE01」として「file2」、出力ファイル「OFILE01」として「file4」が設定され、ジョブステップ名「JOBSTEP」の「jobstep5」のジョブが、プログラム名「PGM」として「PG5」、第1の入力ファイル「IFILE01」として「file3−1」、第2の入力ファイル「IFILE02」として「file3−2」が設定され、ジョブステップ名「JOBSTEP」の「jobstep6」のジョブが、プログラム名「PGM」として「PG6」、第1の入力ファイル「IFILE01」として「file4」、第2の入力ファイル「IFILE02」として「file5」、出力ファイル「OFILE01」として「file6」を設定記述している。
図5に示したジョブ制御ファイル10の処理ツリーは、図6に示す如く「file120」(符号120)を読み込んだ「jobstep1」(符号121)が「file1」(符号122)を出力し、該「file1」を読み込んだ「jobstep2」(符号123)が「file2」(符号125)を出力し、前記「file1」を読み込んだ「jobstep3」(符号124)が「file3−1」(符号126)及び「file3−2」(符号127)を出力し、「jobstep4」(符号128)が前記「file2」を読み込んで「file4」(符号130)を出力し、「jobstep5」(符号129)が前記「file3−1及び3−2」を読み込んで「file5」(符号131)を出力し、前記「file4及び5」を読み込んだ「jobstep6」(符号132)が「file6」(符号133)を出力する様に構成される。本例においては、「file1」と「file3−1」と「file3−2」をファイル処理の対象とし、他の「file」をパイプ処理の対象とする必要があるものとし、詳細は後述する。
[動作]
本実施形態によるジョブ管理サービス機能部20は、ジョブが投入されると前述したジョブ制御ファイル10の記述内容を読み込み、各ジョブとファイルデータとの依存関係を解析し、パイプ処理による不具合が生じるジョブステップのパイプ処理を行うための属性(例えば「pipe=on」)を付与したジョブ制御ファイルを後述するファイル化アルゴリズム及びグループ化アルゴリズムを用いて自動的に生成するものであって、まず、前述した図2に示したジョブ制御ファイル10の変換処理について説明する。
[ファイル化アルゴリズム]
ジョブ管理サービス機能部20は、図2に示したジョブ制御ファイル10を読み込み、ファイル化アルゴリズム機能部21が、図4に示したファイル化アルゴリズムを用いて解析する。この解析アルゴリズムは、前述した図12にて説明した処理停止状態が発生しないことを保証するためには、(a)全てのジョブステップの入力が単数であること、又は(b)複数の入力全てが互いに同一のジョブステップをパイプによって経由していないことの何れか一方の条件を満たせば良いこと、即ち「ジョブステップと入出力ファイルの関係が閉領域を構成するときに処理停止が発生する可能性があること」に着目したものである。以下、図4に示したアルゴリズムを「ファイル化アルゴリズム」と呼ぶ。
まず、図4では、ファイル数をN(>=1)と表記し、各入出力ファイルをFILE(i)(i=1,…,N)と表記し、ジョブステップ数をM(>=1)と表記し、各ジョブステップをJOBSTEP(i)(i=1,…,M)と表記しており、以下、本アルゴリズムを順を追って説明する。
本ファイル化アルゴリズムによる処理は、入出力ファイルのFILE(i)の変数「i」に値「1」を代入するステップS502と、該FILE(i)に経由ジョブステップをセットするステップS504と、変数「i」が値「N」に達するまで該ステップS504を繰り返すステップS503及び505とを実行することにより、全ての入出力ファイルに対して経由ジョブステップをセットする。
この経由ジョブステップとは、そのファイルが作成されるまでに経由してきたジョブステップのことであり、例えば、任意のファイルFILE(n)が作成されるまでにJOBSTEP(a)→(中間ファイル)→JOBSTEP(b)→(中間ファイル)→JOBSTEP(c)→FILE(n)出力とジョブステップが実行されている場合、FILE(n)の経由ジョブステップはJOBSTEP(a)とJOBSTEP(b)とJOBSTEP(c)となる。
次いで本処理は、変数「i」に値「1」を代入するステップS506と、JOBSTEP(i)の出力をパイプに設定するステップS508と、該ステップS508を変数「i」が値「M」に達するまで繰り返すステップS507及び509とを実行することによって、全てのジョブステップに対して一旦出力するファイルの属性をパイプと設定する。
即ち、本ファイル化アルゴリズムは、まず、ステップ504により全ての入出力ファイルに対して経由ジョブステップをセットすると共に、ステップ508により全てのジョブステップの出力ファイルの属性を一旦パイプ処理として設定する処理を実行する。具体的には、ジョブ制御ファイルの該当出力ファイルに「pipe=on」の記述を加える処理を行う。
更に本処理は、変数「i」に値「1」を代入するステップS511と、JOBSTEP(i)の入力ファイル数Sが1より大きいか否か(即ち、入力ファイルが単数か複数か)を判定し、大きくないと判定したとき(単数と判定した)に後述するステップS528に移行するステップS512を実行する。このステップS512による判定は、前述した通り入力が単数の場合は片方の入力待ちによる処理停止が発生し得ない原理を利用し、これを判定するためである。
次いで本処理は、前記ステップS512において入力ファイルが複数と判定したとき、変数「j」に値「1」を代入するステップS520と、変数「k」に値「j+1」を代入するステップS522と、FILE(JOBSTEP(i),j)とFILE(JOBSTEP(i),k)の経由ジョブステップに一致がないか否かを判定するステップS524を実行する。このステップS524は、入力ファイルの間で経由ジョブステップに共通のものがあるか判定するものであって、共通のものがあると判定したとき、図13で説明した処理停止が発生する可能性があるため、出力ファイルの属性をファイルに指定するステップS525を実行する。このステップS525は、例えば、JOBSTEP(n)の入力ファイルがFILE(a)とFILE(b)であり、FILE(a)の経由ジョブステップがJOBSTEP(s)とJOBSTEP(t)、FILE(b)の経由ジョブステップがJOBSTEP(s)とJOBSTEP(u)である場合、JOBSTEP(s)が共通しているため、JOBSTEP(s)の出力をファイルに指定することによって、閉領域を崩して処理停止を防止する。
即ち、本ファイル化アルゴリズムは、ステップS512において、ジョブステップの入力ファイル数を判定し、入力ファイル数が単数と判定したとき、入力が単数の際には片方入力待ちによる停止処理が発生することがないため、パイプ処理属性とすることを確定(ステップS508により入出力ファイルに付与した属性「pipe=on」を残したままとすること)し、入力ファイル数が単数でないと判定したとき、入力ジョブステップの間で経由ジョブステップに共通のものがあるか判定し、共通の経由ジョブステップがあると判定したとき、処理停止の可能性があるため、出力ファイルの属性をファイルとする。具体的には、ジョブ制御ファイルの入出力ファイルにステップ508で付与した「pipe=on」の記述を削除する処理である。
従って、本実施形態によるファイル化アルゴリズムは、入力するファイル数が単数のジョブステップをファイル化するようにジョブ制御ファイルを書き換えることによって、停止処理の発生を防止したジョブ制御ファイルを図15に示す如く、生成することができる。図15の例では、図3に示した処理ツリーを参照すれば明らかな如く、file1及び2(符号72及び73)を除く入出力ファイルに属性「pipe=on」を付与した形に生成することができる。尚、最初と最後のfile0及び5は、入力基及出力データのため属性はファイルである。
前述の実施形態によるファイル化アルゴリズムにより生成したジョブ制御ファイルは、ファイル処理とパイプ処理とが混在し、実行可能なジョブステップを同時に起動させた際には、入力ファイルが存在しないプロセスが存在する可能性があるため、ジョブステップを実行する順番を最適化する必要があり、この最適化処理を行うグループ化アルゴリズムを次に説明する。
[グループ化アルゴリズム]
本実施形態によるジョブ管理サービス機能部20は、第2実施形態である図5に示したジョブ制御ファイル10を読み込み、ファイル化アルゴリズム機能部21が前述の図4に示したファイル化を実行した後、グループ化アルゴリズム機能部22が、パイプ及びファイルをグループ化する処理を実行するものであって、この処理を図7を参照して説明する。以下、図7のアルゴリズムを「グループ化アルゴリズム」と呼び、図7の例では、ジョブステップ数をM(>=1)とし、各ジョブステップをJOBSTEP(i)(i=1,…,M)と表記する。また、GR(n)は処理グループを意味する。この処理グループとは、パイプによって同時に実行するジョブステップの集まりのことである。
[グループ化処理]
さて、このグループ化アルゴリズムは、図7に示す如く、変数「i」及び「j」に値「1」を代入するステップS801と、変数「i」が値「1」かを判定することによって最初のジョブステップか否かを判定するステップS803と、該ステップS803により最初のジョブステップと判定したときに処理グループGR(i)を作成するステップS806と、該ステップS806に続いて変数「j」に値「1」を加算してカウントアップするステップS808と、前記ステップS803において変数「i」が値「1」でない(最初のジョブステップでない)と判定したとき、入力ファイルに「ファイル」が含まれるか否かを判定し、有ると判定したときに前記ステップS806に移行するステップS804と、該ステップS804において「ファイル」が含まれていないと判定したとき、入力ファイルが複数か否かを判定し、複数と判定したときに前記ステップS806に移行するステップS805と、該ステップS805において複数でないと判定したとき、変数「i」に値「1」を加算してカウントアップするステップS809と、該ステップS809と変数「i」が値「M」と等しくなるまで繰り返すステップS802とを実行する。
これらステップS802〜809間の処理によって、本グループ化アルゴリズムは、(1)最初のジョブステップか、(2)入力ファイルの属性はファイルか、(3)入力ファイルが複数あるかの判定を行い、何れか1つの条件に当てはまる場合、新規に処理グループGR(i)をステップS806により作成し、作成した処理グループの内包ジョブステップ(その処理グループに含まれるジョブステップ)に対象のジョブステップをステップS807により追加するように処理を行う。
次いで本グループ化アルゴリズムは、ジョブステップの変数「N」から値「j−1」を代入するステップS810と、変数「i」に「1」を代入するステップS811と、jOBSTEP(i)が他の何れかの処理グループに内包されているか否かを判定するステップS813と、該ステップS813において内包されていないと判定したとき、JOBSTEP(i)を、入力マスタを出力したジョブステップが属する処理グループに追加するステップS820と、前記ステップS813又は820に続き、変数「i」に値「1」を加算してカウントアップするステップS821と、該ステップS821との間で変数「i」が値「M」と等しくなるまで繰り返すステップS812とを実行する。
これらステップS812〜821による処理によってグループ化アルゴリズムは、全てのジョブステップに対し、既に何れかの処理グループに含まれているかを判定する工程と、該工程において既に何れかの処理グループに含まれていないと判定したとき、入力ファイルを出力するジョブステップを内包する処理グループに、対象のジョブステップを内包ジョブステップとして追加する処理を行う。換言すれば、これらステップは、処理グループが複数存在するとき、後ろから(後から作成したものから)順に統合を行う。この統合は、対象となる処理グループの内包ジョブステップの入力が全てパイプの場合、内包ジョブステップの入力ファイルを出力するジョブステップが属する処理グループ(依存処理グループと呼ぶ)を対象となる処理グループに統合する。処理グループの統合は、統合元の処理グループの内包ジョブステップを全て統合先の内包ジョブステップに追加した後、統合元処理グループを削除することで行う。入力が全てパイプのもののみを統合することにより、入出力の矛盾は回避されており、後ろから統合することで処理順の整合性は保持されている。
この結果、本処理は、あるジョブステップが入力するファイルを出力するジョブステップは必ず1つとなるため、漏れも重複も存在せず、全てのジョブステップが何らかの処理グループに属させることができる。この手順で作成された処理グループは、それ自体は確実に入出力の矛盾が発生しない単位となっているため、作成順に処理を実行しても矛盾は発生しないが、最適化が不十分(同時に実行可能なジョブステップが同時に実行されない可能性がある)なことが想定される。このため本グループ化アルゴリズムにおいては、次の処理グループの統合処理を行う。
[処理グループ統合処理]
次いで本実施形態によるグループ化アルゴリズムは、前記ステップ822に続き、処理グループGR(i)が存在するか否かの判定を行い、存在しないと判定したときに後述するステップS827に移行するステップS824と、該ステップS824において処理グループGR(i)が存在すると判定したとき、存在を確認した処理グループGR(i)に内包されているジョブステップの入力ファイルが「パイプ」のみか否かの判定を行い、「パイプ」のみでないと判定したときにステップS827に移行するステップS828と、該ステップS828において、入力ファイルが「パイプ」のみと判定したとき、処理グループGR(i)に、処理グループGR(i)への入力マスタを出力する処理グループGR(x)に属するジョブステップを全て追加するステップS825と、該処理グループGR(x)を削除するステップS826と、変数「i」に値「i−1」を代入してカウントダウンするステップS827と、該ステップS827迄の処理を変数「i」が値「2」に達するまで繰り返すステップS823とを実行する。
これらステップS823〜828による処理による処理グループ統合処理は、処理グループが2つ以上ある場合に、後ろから(後から作成したものから)順に統合を行い、対象となる処理グループの内包ジョブステップの入力が全てパイプの場合、内包ジョブステップの入力ファイルを出力するジョブステップが属する処理グループ(依存処理グループと呼ぶ)を対象となる処理グループに統合する処理を行う。この処理グループの統合は、統合元の処理グループの内包ジョブステップを全て統合先の内包ジョブステップに追加した後、統合元処理グループを削除することにより行う。入力が全てパイプのもののみ統合することによって、入出力の矛盾は回避されており、後ろから統合することで処理順の整合性は保持される。
このグループ化アルゴリズムの処理を図6に示す処理ツリーを用いて説明すると、本実施形態によるグルーブ化アルゴリズムは、次(1)〜(3)の処理を行う。
(1)「jobstep1」(符号120)と、入力がファイルである「jobstep2及びjobstep3」(符号123及び124)と、複数入力が存在する「jobstep5及びjobstep6」(符号129及び132)にて新規な処理グループを作成する。
(2)処理グループに含まれていない「jobstep4」(符号128)を既存の処理グループに追加する。追加先は、入力ファイルを出力した「jobstep2」(符号125)の属する処理グループである。この段階での処理グループと各処理グループの内包ジョブステップ、及び依存処理グループの関係を図8に示す。
この図8に示した依存処理グループの関係は、符号(a)で示す処理グループ番号1が、依存処理グループがなく且つ内包JOBSTEPが「jobstep1」であり、符号(b)で示す処理グループ番号2が、依存処理グループが「1」であり且つ内包JOBSTEPが「jobstep2」及び「jobstep4」であり、符号(c)で示す処理グループ番号3が、依存処理グループが「1」であり且つ内包JOBSTEPが「jobstep3」であり、符号(d)で示す処理グループ番号4が、依存処理グループが「3」であり且つ内包JOBSTEPが「jobstep5」であり、符号(e)で示す処理グループ番号5が、依存処理グループが「2」及び「4」であり且つ内包JOBSTEPが「jobstep6」であることを表している。
(3)処理グループの統合(最適化)を行う。入力がパイプのみの処理グループには、図8の処理グループ番号5の処理グループ(内包ジョブステップはstep6)が存在する。よって、処理グループ5の依存処理グループである処理グループ2及び処理グループ4を処理グループ5に統合し、処理グループ2と処理グループ4は削除することによって、処理グループの統合は完了する。
本実施形態によるジョブ管理システムは、図1に示したジョブ実行制御部30が、前述した処理グループ番号の小さい順にジョブステップを実行することによって、停止処理がなく、且つ高速なバッチ処理を実行することができる。これを具体的に説明すると、本実施形態によるジョブ実行制御部30が、最初に、図9に示した処理グループ1を実行し、「file1」(符号122)を作成し、次に処理グループ3を実行し、「filie3−1及びfile3−2」(符号126及び127)を作成し、最後に処理グループ5を実行することによって、停止処理がなく、且つ高速なバッチ処理を実行することができる。
このように本実施形態によるジョブ管理システム及びジョブ管理方法は、パイプ処理をファイル化する処理と、該ファイルを処理グループ化する処理と、該処理グループを統合化する処理と、ジョブイテップの実行順序を決める処理とを実行することによって、ジョブステップと入出力ファイルの関係が閉領域を構成しないようにファイル化アルゴリズムを実行させ、プログラムの停止を防止することができる。
本発明の一実施形態によるジョブ管理方法が適用されるジョブ管理システムの全体構成を示す図。 本発明の第1の本実施形態によるジョブ制御ファイルを示す図。 本実施形態による処理ツリーを示す図。 本実施形態によるファイル化アルゴリズムのフローチャート図。 本発明の第2の実施形態によるジョブ制御ファイルを示す図。 本実施形態による処理ツリーを示す図。 本実施形態によるグループ化アルゴリズムを示す図。 本実施形態によるグループ化完了時の状態を説明するための図。 本実施形態によるグループ統合完了時の状態を説明するための図。 本発明の対象となるパイプ処理を説明するための図。 本発明の対象となる並行パイプ処理を説明するための図。 本発明の対象となる並行パイプ処理を説明するための図。 従来の不適切な処理順序による異常終了状態を説明するための図。 本発明の対象となるジョブ制御ファイル及び処理ツリーを示す図。 第1の実施形態によるジョブ制御ファイルを示す図。 第2の実施形態によるジョブ制御ファイルを示す図。
符号の説明
10:ジョブ制御ファイル、20:ジョブ管理サービス機能部、21:ファイル化アルゴリズム機能部、22:グループ化アルゴリズム機能部、30:ジョブ実行制御部、40:ジョブ。

Claims (10)

  1. プロセスが実行する複数のジョブステップと該ジョブステップによりプロセスから入出力されるファイルとを記述した入力ジョブ制御ファイルを入力とし、該入出力ファイルをプロセスがパイプ処理を行うかファイル処理を行うかの属性を付与した属性付きジョブ制御ファイルを出力するジョブ管理サービスと、該ジョブ管理サービスから出力された属性付きジョブ制御ファイルのファイル属性を含むジョブステップを実行するジョブ実行制御部とを備えるジョブ管理システムであって、
    該ジョブ管理サービス部が、
    前記入力ジョブ制御ファイルを入力とし、該入力ジョブ制御ファイルに含まれるジョブステップの入力ファイルが経由する他のジョブステップを経由ジョブステップとしてセットする第1工程と、
    該第1工程により経由ジョブステップをセットしたジョブステップにパイプ属性をセットする第2工程と、
    該第2工程によりパイプ属性をセットしたジョブステップの入力ファイルの数が単数か否かを判定する第3工程と、
    該第3工程により入力ファイルの数が単数でないと判定したジョブステップの属性をファイル処理に設定する第4工程と、
    前記第3工程により入力ファイルの数が単数と判定したジョブステップの属性をパイプ処理に維持する設定を行う第5工程と、
    前記ジョブ実行制御部が、
    前記第4工程及び第5工程により設定したジョブステップを含む属性付きジョブ制御ファイルを入力とし、該入力した属性付きジョブ制御ファイルのファイル属性を含むジョブステップを実行する第6工程とを実行するジョブ管理システム。
  2. 前記ジョブ管理システムが、ジョブステップを統合するグループ化アルゴリズム機能部を含み、該グループ化アルゴリズム機能部が、
    前記第4工程に続き、
    前記第4工程及び第5工程により設定した複数のジョブステップに処理グループ番号を付与する第7工程と、
    該第7工程により処理グループ番号を付与したジョブステップに、該ジョブステップの入力ファイルを出力するジョブステップの内包ジョブステップ番号を付与する第8工程と、
    該第8工程による内包ジョブステップ番号が共通するジョブステップを、同一の処理グループ番号の処理グループに統合する第9工程と、
    該第9工程により統合した処理グループ番号のジョブステップの内包ジョブステップの入力ファイル属性が全てパイプ処理か否かを判定し、内包ジョブステップの入力ファイル属性が全てパイプ処理と判定したとき、該入力ファイル属性が全てパイプ処理と判定したジョブステップのみを統合する第10工程と、
    該第10工程に統合したジョブステップと前記第5工程により設定したジョブステップを含む属性付きジョブ制御ファイルを前記ジョブ実行制御部に出力する第11工程とを実行する請求項1記載のジョブ管理システム。
  3. 前記グループ化アルゴリズム機能部が、前記第9工程により統合した入力ファイル属性が全てパイプ処理と判定したジョブステップの統合を行うとき、前記処理グループ番号の値が大きいジョブステップに、該処理グループ番号の値が大きいジョブステップに比べて処理グループ番号の値が小さいジョブステップを統合する第12工程を実行する請求項2記載のジョブ管理システム。
  4. 前記グループ化アルゴリズム機能部が、前記第12工程により統合した処理グループ番号の値が小さいジョブステップの処理グループ番号を削除する第13工程を実行する請求項3記載のジョブ管理システム。
  5. 前記ジョブ実行制御部が、前記属性付きジョブ制御ファイルのファイル属性の記述がないジョブステップをファイル処理と判定し、パイプ処理との属性が記述されているジョブステップをパイプ処理と判定して、ジョブステップを実行する請求項1から4何れかに載のジョブ管理システム。
  6. プロセスが実行する複数のジョブステップと該ジョブステップによりプロセスから入出力されるファイルとを記述した入力ジョブ制御ファイルを入力とし、該入出力ファイルをプロセスがパイプ処理を行うかファイル処理を行うかの属性を付与した属性付きジョブ制御ファイルを出力するジョブ管理サービスと、該ジョブ管理サービスから出力された属性付きジョブ制御ファイルのファイル属性を含むジョブステップを実行するジョブ実行制御部とを備えるジョブ管理システムのジョブ実行方法であって、
    該ジョブ管理サービス部に、
    前記入力ジョブ制御ファイルを入力とし、該入力ジョブ制御ファイルに含まれるジョブステップの入力ファイルが経由する他のジョブステップを経由ジョブステップとしてセットする第1工程と、
    該第1工程により経由ジョブステップをセットしたジョブステップにパイプ属性をセットする第2工程と、
    該第2工程によりパイプ属性をセットしたジョブステップの入力ファイルの数が単数か否かを判定する第3工程と、
    該第3工程により入力ファイルの数が単数でないと判定したジョブステップの属性をファイル処理に設定する第4工程と、
    前記第3工程により入力ファイルの数が単数と判定したジョブステップの属性をパイプ処理に維持する設定を行う第5工程とを実行させ、
    前記ジョブ実行制御部に、
    前記第4工程及び第5工程により設定したジョブステップを含む属性付きジョブ制御ファイルを入力とし、該入力した属性付きジョブ制御ファイルのファイル属性を含むジョブステップを実行する第6工程とを実行させるジョブ管理方法。
  7. 前記ジョブ管理システムが、ジョブステップを統合するグループ化アルゴリズム機能部を含み、該グループ化アルゴリズム機能部に、
    前記第4工程に続き、
    前記第4工程及び第5工程により設定した複数のジョブステップに処理グループ番号を付与する第7工程と、
    該第7工程により処理グループ番号を付与したジョブステップに、該ジョブステップに入力するファイルを出力するジョブステップの内包ジョブステップ番号を付与する第8工程と、
    該第8工程による内包ジョブステップ番号が共通するジョブステップを、同一の処理グループ番号の処理グループに統合する第9工程と、
    該第9工程により統合した処理グループ番号のジョブステップの内包ジョブステップの入力ファイル属性が全てパイプ処理か否かを判定し、内包ジョブステップの入力ファイル属性が全てパイプ処理と判定したとき、該入力ファイル属性が全てパイプ処理と判定したジョブステップのみを統合する第10工程と、
    該第10工程に統合したジョブステップと前記第5工程により設定したジョブステップを含む属性付きジョブ制御ファイルを前記ジョブ実行制御部に出力する第11工程とを実行させる請求項6記載のジョブ管理方法。
  8. 前記グループ化アルゴリズム機能部に、前記第9工程により統合した入力ファイル属性が全てパイプ処理と判定したジョブステップの統合を行うとき、前記処理グループ番号の値が大きいジョブステップに、該処理グループ番号の値が大きいジョブステップに比べて処理グループ番号の値が小さいジョブステップを統合する第12工程を実行させる請求項7記載のジョブ管理方法。
  9. 前記グループ化アルゴリズム機能部に、前記第12工程により統合した処理グループ番号の値が小さいジョブステップの処理グループ番号を削除する第13工程を実行させる請求項8記載のジョブ管理方法。
  10. 前記ジョブ実行制御部に、前記属性付きジョブ制御ファイルのファイル属性の記述がないジョブステップをファイル処理と判定し、パイプ処理との属性が記述されているジョブステップをパイプ処理と判定し、ジョブステップを実行させる請求項6から9何れかに記載のジョブ管理方法。
JP2008241022A 2008-09-19 2008-09-19 ジョブ管理システム及びジョブ管理方法 Expired - Fee Related JP5033745B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008241022A JP5033745B2 (ja) 2008-09-19 2008-09-19 ジョブ管理システム及びジョブ管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008241022A JP5033745B2 (ja) 2008-09-19 2008-09-19 ジョブ管理システム及びジョブ管理方法

Publications (2)

Publication Number Publication Date
JP2010073015A JP2010073015A (ja) 2010-04-02
JP5033745B2 true JP5033745B2 (ja) 2012-09-26

Family

ID=42204714

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008241022A Expired - Fee Related JP5033745B2 (ja) 2008-09-19 2008-09-19 ジョブ管理システム及びジョブ管理方法

Country Status (1)

Country Link
JP (1) JP5033745B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014222473A (ja) * 2013-05-14 2014-11-27 日本電気株式会社 データ処理装置、データ処理方法、データ処理制御装置、プログラムおよび記録媒体

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3755165B2 (ja) * 1995-06-22 2006-03-15 富士通株式会社 並列処理手続き選定装置及び方法
JP3461636B2 (ja) * 1995-10-24 2003-10-27 富士通株式会社 データ処理装置

Also Published As

Publication number Publication date
JP2010073015A (ja) 2010-04-02

Similar Documents

Publication Publication Date Title
US7467383B2 (en) System for controlling task execution using a graphical representation of task dependency
US8875155B2 (en) Ordered processing of groups of messages
CN112668386A (zh) 使用机器人过程自动化用于文档处理的长时间运行工作流
Diemer et al. Compositional performance analysis in python with pycpa
US9152389B2 (en) Trace generating unit, system, and program of the same
US20180004495A1 (en) Verification of a dataflow representation of a program through static type-checking
JP2009217405A (ja) ジョブネットワーク自動生成方式及びプログラム
JP2010079622A (ja) マルチコアプロセッサシステム、および、そのタスク制御方法
US8271768B2 (en) Concurrent handling of exceptions in received aggregate exception structure with supplied exception handlers and marking handled exceptions
JPWO2004025463A1 (ja) 要件定義方法、ソフトウェアの開発方法、及び、要件単語の変更方法並びに新規規定方法
JP5178852B2 (ja) 情報処理装置およびプログラム
JP5619179B2 (ja) 計算機システム、ジョブ実行管理方法、及びプログラム
US8612991B2 (en) Dynamic critical-path recalculation facility
CN112764902B (zh) 任务调度方法及系统
US8146085B2 (en) Concurrent exception handling using an aggregated exception structure
US10970050B1 (en) User interface engine for miniapp development
JP5033745B2 (ja) ジョブ管理システム及びジョブ管理方法
US20130226670A1 (en) Method and system for automatically partitioning and processing a business process
JP2015095096A (ja) MapReduceジョブ実行システム、MapReduceジョブ実行方法
WO2023098058A1 (zh) 区块链智能合约读写集构建方法及装置
CN114546670A (zh) 一种基于协程的函数式异步数据分发系统及方法
JP2016219068A (ja) 情報処理装置、方法、及びプログラム
WO2012169238A1 (ja) 操作支援方法及び計算機
JP2016071725A (ja) ワークフロー制御プログラム、ワークフロー制御方法及び情報処理装置
US11327758B2 (en) Non-transitory computer-readable recording medium, assembly instruction conversion method and information processing apparatus

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110131

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110202

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20111227

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120529

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: 20120605

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120702

R150 Certificate of patent or registration of utility model

Ref document number: 5033745

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150706

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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