JP2000315190A - ジョブのリカバリ方式 - Google Patents

ジョブのリカバリ方式

Info

Publication number
JP2000315190A
JP2000315190A JP11125147A JP12514799A JP2000315190A JP 2000315190 A JP2000315190 A JP 2000315190A JP 11125147 A JP11125147 A JP 11125147A JP 12514799 A JP12514799 A JP 12514799A JP 2000315190 A JP2000315190 A JP 2000315190A
Authority
JP
Japan
Prior art keywords
information
job
file
batch
jobs
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.)
Pending
Application number
JP11125147A
Other languages
English (en)
Inventor
Toshinori Miyoshi
俊徳 三好
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP11125147A priority Critical patent/JP2000315190A/ja
Publication of JP2000315190A publication Critical patent/JP2000315190A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 オンライン業務とバッチ業務とが同一データ
ベースを更新して並行運用される場合に、バッチ業務の
ジョブの再開始を実現する。 【解決手段】 制御部22は、各ジョブステップの所定
の処理単位毎の実行開始又は実行再開始に先立って、バ
ッチ管理ファイル24上の当該ジョブステップに対応し
たバッチ管理情報を読み込み、各ジョブステップ実行時
に、上記所定の処理単位でのリカバリ制御に必要な再開
始情報と、障害情報とを収集して前記読み込まれたバッ
チ管理情報を更新すると共に、上記更新後の情報でもっ
て前記バッチ管理ファイル24も更新する。データベー
ス又はファイルのオープン直後又はアクセス直後には、
ファイル位置付け情報を収集し、これを上記再開始情報
に取り込む。障害発生後のリカバリ処理では、上記バッ
チ管理情報を使用する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ジョブのリカバリ
方式に関し、特に、オンライン処理業務とバッチ処理業
務とが並行して実施される場合のバッチ処理業務に適用
されるリカバリ方式であり、ファイルのリカバリ処理を
含むジョブのリカバリ方式に関する。
【0002】
【従来の技術】従来、情報処理システムにおいて、主要
データベースの更新を伴うバッチ処理業務のジョブは、
オンライン処理業務の終了後に実施していたが、最近で
は、オンライン処理業務の24時間運用が求められてお
り、この場合には、オンライン処理業務とバッチ処理業
務とで、同一データベースの更新を伴う並行運用が必然
的に実施されていた。
【0003】すなわち、従来は、バッチジョブでの障害
発生時は、データベースをジョブ開始前の状態まで復旧
するか、又は一定間隔(数万件単位又は数十分)毎に取
得したチェックポイント時点の状態まで復旧し、当該ジ
ョブの再実行を行っていた。
【0004】上記の後者の場合には、上記チェックポイ
ント時点ですべてのメモリ情報を別ファイルに出力して
おき、再開始直後に同ファイルからメモリの復旧も行っ
ていた。
【0005】但し、上記の何れの場合にも、更新対象デ
ータベースの他ジョブとの共有を伴わない運用を強いら
れ、例えば、オンライン業務が終了した後でバッチジョ
ブを実行するといった運用形態を取らざるを得なかっ
た。
【0006】なお、本発明に関連する従来技術として、
特開平5−165539号公報には、バッチプログラム
の実行状況を履歴データセットに残し、当該バッチプロ
グラムの種々のケースの実行開始に際しては、上記履歴
データセットから実行開始点を取り出して実行する方式
が開示されている。
【0007】
【発明が解決しようとする課題】しかし、従来の技術で
は、上記の前者の場合は、バッチジョブの開始から終了
まで、後者の場合は、チェックポイントから次回のチェ
ックポイントまでの実行の間で、データベースを占有す
る必要があり、オンライン業務の24時間運用が必須条
件であるシステムにおいては致命的な制限事項となって
いた。
【0008】つまり、従来は、上記のオンライン処理業
務とバッチ処理業務との並行運用を実現する場合に、両
業務が共通アクセスするデータベースの内容の一致を保
証する必要があり、このため、バッチ処理業務において
は、或る処理単位内で、利用するデータベースレコード
を占有する必要があり、そのため、上記の処理単位に依
存することではあるが、障害発生時には多くのデータベ
ース更新が無効になると想定される。このような事情
は、特にオンライン処理業務にとっては致命的な制限事
項となる。
【0009】そこで、本発明は、複数ジョブが同一デー
タベースを共有して並行稼働する場合、特に、オンライ
ン処理業務とバッチ処理業務とが同一データベースを共
有して並行に運用される場合において、バッチ業務が上
記のデータベースを長時間に亘って専有することがない
ようにして、すなわち、オンライン処理業務に多大の待
ち時間を与えることがないようにして、バッチ処理業務
のジョブの再開始を実現すること、具体的には、バッチ
処理業務のトランザクション単位を含む任意の処理単位
での再開始機能を、ファイルやデータベースのリカバリ
処理も含めて実現することを課題としている。
【0010】なお、上記の特開平5−165539号公
報に開示されている方式は、バッチプログラムの実行に
際しての再開始点が考慮されているだけであり、本発明
に係るジョブのリカバリ方式のように、オンライン処理
業務とバッチ処理業務とが同一データベースを共有して
並行に運用される場合において、ジョブステップ開始時
点からのファイルやデータベースの位置付け情報まで含
めてリカバリ情報として蓄積する包括的なリカバリ方式
は開示されていない。
【0011】本発明は、以上のような従来のジョブのリ
カバリ方式における問題点に鑑みてなされたものであ
り、同一データベースの更新を伴う可能性のあるオンラ
イン処理業務とバッチ処理業務とが並行に運用される場
合において、バッチ処理業務のジョブの再開始を実現す
ることができるジョブのリカバリ方式を提供することを
目的とする。
【0012】
【課題を解決するための手段】上記の課題を解決するた
めの本発明は、実行すべき複数のジョブの各々に対応す
るジョブ制御言語を格納したジョブ制御言語格納ファイ
ルと、一つ以上のデータベース及び標準ファイルと、前
記各ジョブのジョブステップ定義情報とリカバリ制御に
必要な再開始情報と障害発生時の障害情報とを格納する
ためのバッチ管理ファイルと、前記複数のジョブの並行
処理を制御する制御部とを備えた情報処理装置のための
ジョブのリカバリ方式であって、前記制御部は、前記各
ジョブに含まれる各ジョブステップの所定の処理単位毎
の実行開始又は実行再開始に先立って、前記バッチ管理
ファイル上の当該ジョブステップに対応したバッチ管理
情報を読み込む手段と、前記各ジョブの各ジョブステッ
プ実行時に、前記所定の処理単位でのリカバリ制御に必
要な再開始情報と、障害発生時の障害情報とを収集し、
前記収集された各情報でもって前記読み込まれたバッチ
管理情報を更新すると共に、前記更新後の情報と同一の
情報でもって前記バッチ管理ファイルを更新する手段
と、前記データベース又はファイルのオープン直後又は
アクセス直後には、当該データベース又はファイルに関
するファイル位置付け情報を収集すると共に、前記収集
されたファイル位置付け情報を前記再開始情報に取り込
む手段と、障害発生後のリカバリ時点では、前記収集さ
れたバッチ管理情報を使用してリカバリ処理を実行する
手段と、を備えたことを特徴とする。
【0013】また、上記の課題を解決するための本発明
は、実行すべき複数のジョブの各々に対応するジョブ制
御言語を格納したジョブ制御言語格納ファイルと、一つ
以上のデータベース及び標準ファイルと、前記各ジョブ
のジョブステップ定義情報とリカバリ制御に必要な再開
始情報と障害発生時の障害情報とを格納するためのバッ
チ管理ファイルと、前記複数のジョブの並行処理を制御
する制御部とを備えた情報処理装置であって、前記制御
部は、前記各ジョブに含まれる各ジョブステップの所定
の処理単位毎の実行開始又は実行再開始に先立って、前
記バッチ管理ファイル上の当該ジョブステップに対応し
たバッチ管理情報を読み込む手段と、前記各ジョブの各
ジョブステップ実行時に、前記所定の処理単位でのリカ
バリ制御に必要な再開始情報と、障害発生時の障害情報
とを収集し、前記収集された各情報でもって前記読み込
まれたバッチ管理情報を更新すると共に、前記更新後の
情報と同一の情報でもって前記バッチ管理ファイルを更
新する手段と、前記データベース又はファイルのオープ
ン直後又はアクセス直後には、当該データベース又はフ
ァイルに関するファイル位置付け情報を収集すると共
に、前記収集されたファイル位置付け情報を前記再開始
情報に取り込む手段と、障害発生後のリカバリ時点で
は、前記収集されたバッチ管理情報を使用してリカバリ
処理を実行する手段と、を備えたことを特徴とする。
【0014】さらに、上記の課題を解決するための本発
明は、実行すべき複数のジョブの各々に対応するジョブ
制御言語を格納したジョブ制御言語格納ファイルと、一
つ以上のデータベース及び標準ファイルと、前記各ジョ
ブのジョブステップ定義情報とリカバリ制御に必要な再
開始情報と障害発生時の障害情報とを格納するためのバ
ッチ管理ファイルと、前記複数のジョブの並行処理を制
御する制御部とを備えた情報処理装置のためのジョブの
リカバリ方法であって、前記制御部は、前記各ジョブに
含まれる各ジョブステップの所定の処理単位毎の実行開
始又は実行再開始に先立って、前記バッチ管理ファイル
上の当該ジョブステップに対応したバッチ管理情報を読
み込むステップと、前記各ジョブの各ジョブステップ実
行時に、前記所定の処理単位でのリカバリ制御に必要な
再開始情報と、障害発生時の障害情報とを収集し、前記
収集された各情報でもって前記読み込まれたバッチ管理
情報を更新すると共に、前記更新後の情報と同一の情報
でもって前記バッチ管理ファイルを更新するステップ
と、前記データベース又はファイルのオープン直後又は
アクセス直後には、当該データベース又はファイルに関
するファイル位置付け情報を収集すると共に、前記収集
されたファイル位置付け情報を前記再開始情報に取り込
むステップと、障害発生後のリカバリ時点では、前記収
集されたバッチ管理情報を使用してリカバリ処理を実行
するステップと、を実行することを特徴とする。
【0015】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照して説明する。
【0016】図1は、本発明の実施の形態に係るジョブ
のリカバリ方式で使用するバッチ管理情報の構成を示す
ブロック図である。
【0017】本実施の形態に係るジョブのリカバリ方式
は、ジョブステップの実行をトランザクション単位での
リカバリ処理を含めて制御するために、ジョブステップ
定義情報と共に、トランザクション単位の再開始情報や
障害情報をバッチ管理情報として収集する。
【0018】上記バッチ管理情報の構成は、図1のジョ
ブステップ定義情報1と、ジョブステップ再開始情報2
と、ジョブステップ障害情報3とで示される。
【0019】ジョブステップ定義情報1は、予め定義さ
れ、バッチジョブ実行中は参照のみがなされるジョブス
テップ単位の基本情報の構成を示す。ジョブステップ定
義情報1に構成を示すとおり、一つのジョブステップに
ついての上記基本情報は、ジョブステップ名と、後述す
るジョブステップ再開始情報2にリンクするためのレコ
ード番号と、再開始タイプと、コミット間隔と、業務ア
プリケーション名等の固有情報と、その他のジョブステ
ップに固有の情報とを含む。
【0020】ジョブステップ再開始情報2は、ジョブス
テップの再開始に備えてバッチジョブ実行中に所定の処
理単位、すなわちコミット処理又はチェックポイント処
理毎に更新する再開始情報の構成を示す。ジョブステッ
プ再開始情報2に構成を示すとおり、一つのジョブステ
ップについての上記再開始情報は、トランザクション通
番と、コミット通番と、各種ファイルの位置付情報と、
その他ジョブステップの実行状態情報とを含む。
【0021】ジョブステップ障害情報3は、バッチジョ
ブ異常終了時の異常内容を示す障害情報の構成を示す。
ジョブステップ障害情報3に構成を示すとおり、上記障
害情報は、ジョブステップ名と、障害の直接原因となっ
た障害データ情報と、その他ジョブステップの異常終了
時の情報とを含む。
【0022】上記バッチ管理情報は、ジョブステップ単
位で、後述する制御部22内のジョブ情報用メモリ25
に収集されるが、同一の情報がバッチ管理ファイル24
にも記録される。
【0023】図2は、本発明の実施の形態に係るジョブ
のリカバリ方式の全体構成を示すブロック図である。
【0024】実行JCL格納ファイル21は、運用すべ
きバッチ処理業務に含まれる一連のジョブに対応したジ
ョブ制御言語を記憶している。上記一連のジョブの各々
は、一つ以上のジョブステップを含むので、上記の実行
JCL格納ファイル21は、上記の各ジョブステップに
対応したジョブステップ制御言語を含む。
【0025】制御部22は、実行JCL格納ファイル2
1から、各ジョブ制御言語対応の各ジョブステップ制御
言語を順次に読み込み、当該読み込んだジョブステップ
制御言語に対応する前述のバッチ管理情報をバッチ管理
ファイル24から得て、該バッチ管理情報に指定された
業務アプリケーションを呼び出して実行すると共に、上
記バッチ管理情報に従って上記業務アプリケーションの
リカバリ対策用の処理も含めた実行を制御する。また、
障害時には、再開始の制御を行う。(詳細は後述する)
バッチ管理ファイル24は、上記したジョブステップ定
義情報1と、ジョブステップ再開始情報2と、ジョブス
テップ障害情報3で構成が示される情報を各ジョブステ
ップ毎に格納している。(詳細は後述する)データベー
ス群29は、上記のオンライン処理業務とバッチ処理業
務とで共通にアクセスされるファイル群を含む。
【0026】標準ファイル群210は、上記のオンライ
ン処理業務とバッチ処理業務とで共通にアクセスされる
システム常設の標準ファイル群を含む。
【0027】以下、制御部22とバッチ管理ファイル2
4の詳細構成を説明する。
【0028】制御部22は、実行JCL格納ファイル2
1から上記のジョブステップ制御言語を読み込み、かつ
上記読み込んだジョブステップ制御言語に指定されてい
るジョブステップ名に対応する上記バッチ管理情報をバ
ッチ管理ファイル24から得た後に上記バッチ管理情報
に指定されている業務アプリケーション処理部26を起
動するバッチ・コントローラ23と、上記起動される業
務アプリケーション処理部26と、各種ファイルやデー
タベースのアクセスを行うファイルハンドラ27と、上
記バッチ管理情報及びジョブステップ実行情報を格納す
るためのジョブ情報用メモリ25と、後述するファイル
位置付け情報を格納するためのファイル位置付け情報メ
モリ28とを含む。
【0029】バッチ管理ファイル24は、上記のバッチ
管理情報を上記各ジョブステップに対応して含む。上記
一つのジョブステップに対応するバッチ管理情報は、具
体的には、ジョブステップ定義情報1で構成が示され、
当該ジョブステップのジョブステップ名をキーとする情
報を格納したジョブステップ定義情報レコードと、ジョ
ブステップ障害情報3で構成が示され、上記ジョブステ
ップ名を含む情報を格納したジョブステップ障害情報レ
コードと、ジョブステップ再開始情報2で構成が示さ
れ、上記ジョブステップ定義情報1で構成が示される情
報の登録時に払出すレコード番号を相対キーとする情報
を格納したジョブステップ再開始情報レコードとで構成
され、かつ上記の各レコードは1対1対1の関係で上記
バッチ管理情報を構成し、処理用途に合わせたファイル
形式を適用したファイルに格納される(以下、上記各フ
ァイルの総称を「バッチ管理ファイル」と呼称する)。
上記のバッチ管理ファイルには全ジョブステップ分の管
理情報を登録する。
【0030】ジョブステップ再開始情報2で構成が示さ
れる各ジョブステップ対応の情報を格納するバッチ再開
始ファイルは、各バッチジョブの実行中に頻繁に更新を
行う必要があるため、アクセス効率を考慮して相対編成
ファイルを適用すると共に、バッチジョブ異常終了直前
の処理成立ポイントの情報を保証する必要があるため
に、ジャーナルによるリカバリ対照とするとよい。
【0031】バッチ・コントローラ23は、実行JCL
格納ファイル21からバッチ管理情報を展開する際の検
索キーとなるジョブステップ名を取得し、ジョブ情報用
メモリ25内にジョブステップ実行情報を格納すると共
に、バッチ管理ファイル24から当該ジョブステップの
バッチ管理情報を取得してジョブ情報用メモリ25内に
展開する。以後は、ジョブ情報用メモリ25内のバッチ
管理情報に従い、業務アプリケーション処理部26の呼
び出し、コミット処理の実施等の当該バッチジョブの実
行を制御する。
【0032】また、上記の業務アプリケーション処理部
26の呼び出し時には、規定されたバッチアプリケーシ
ョンインタフェース(以下、「バッチAPI」と呼称す
る)に従って必要情報を業務アプリケーション処理部2
6に通知すると共に、業務アプリケーション処理部26
からの処理返却という形で業務的な処理単位を認識して
コミット処理またはバッチジョブ終了処理を行う。
【0033】上記のコミット処理時は、ファイルハンド
ラ27の管理するファイル位置付け情報用メモリ28内
のファイル位置付情報をジョブ情報用メモリ25内のジ
ョブステップ再開始情報エリアに取り込みを行うと共
に、バッチ管理ファイル24の対応する同情報レコード
の更新を行い、実コミット要求を行う。
【0034】上記の処理により、ジョブ情報用メモリ2
5内のバッチ管理情報は、常に、バッチ管理ファイル2
4内の情報との一致(整合性)が保証される。
【0035】業務アプリケーション処理部26は、上記
バッチAPIによって通知された情報により、呼出区分
を認識し、業務処理を行い、業務的な処理単位(1トラ
ンザクション分の処理)の終了毎、又は、業務処理の終
了時に上記バッチAPIにAP完了区分を設定し、処理
を返却する。また、各種ファイルやデータベースのアク
セスが必要な時には、規定されたファイルアプリケーシ
ョンインタフェース(以下、「ファイルAPI」と呼称
する)に従ってファイルハンドラ27に対して処理要求
を行い、上記ファイルAPIから返却される情報に依っ
て上記各種ファイルやデータベースのアクセス状態を判
定する。
【0036】ファイルハンドラ27は、上記ファイルA
PIによって通知された情報に従って標準ファイル群2
10やデータベース群29に対する実アクセスを行い、
その処理結果を上記ファイルAPIに従って返却する。
また、各アクセス毎にファイル位置付け情報用メモリ2
8の内容を更新し、コミット処理及び再開始処理に備え
る。
【0037】異常終了により、バッチ処理業務が中断し
た後のバッチジョブ再開始時には、バッチ・コントロー
ラ23が業務アプリケーション処理部26の呼び出しを
開始する前に、バッチ管理ファイル24から取得したバ
ッチ管理情報に依り、ファイル位置付け情報用メモリ2
8内に前回異常終了する直前の処理成立点(コミットポ
イント)情報を復元することで、ファイルハンドラ27
の再開始後の位置付処理を実現する。
【0038】図3は、本発明の実施の形態に係るジョブ
のリカバリ方式のメインルーチンでの動作を示したフロ
ーチャートである。
【0039】以下、図1,2を参照しつつ、図3に示す
メインルーチンのフローチャートを使用して本実施の形
態に係るジョブのリカバリ方式の動作を説明する。
【0040】まず、ステップS1では、実行JCL格納
ファイル21から、バッチ管理情報のキーとなるジョブ
ステップ名を含むジョブ制御言語の取得を行う。
【0041】次に、ステップS2では、上記取得したジ
ョブステップ名をキーとしてバッチ管理ファイル24か
らバッチ管理情報を取得し、上記取得したバッチ管理情
報をジョブステップ定義情報1で構成を示すジョブ情報
用メモリ25内のジョブステップ定義情報に展開し、上
記展開した情報からレコード番号を認識してジョブステ
ップ再開始情報2で構成を示すジョブ情報用メモリ25
内のジョブステップ再開始情報を展開し、さらに、上記
ジョブステップ名をキーとして、ジョブステップ障害情
報3で構成を示すジョブ情報用メモリ25内のジョブス
テップ障害情報の展開を行う。
【0042】次に、ステップS3では、上記展開したバ
ッチ管理情報から当該バッチジョブの開始モードを判断
し、以下の各ステップでは、上記開始モードに応じて処
理を行う。
【0043】上記開始モードが通常開始の場合は、ステ
ップS4にて、バッチAPIの呼出区分に「開始」を設
定し、上記開始モードが再開始の場合は、先ず、ステッ
プS5にて、ジョブステップ再開始情報2で示す情報の
編集を行い、その後、ステップS6にて、バッチAPI
の呼出区分に「再開始」を設定する。
【0044】次に、ステップS7では、当該バッチジョ
ブの開始情報(開始のタイミングであることを示す情
報)を上記したジョブステップ再開始情報とジョブステ
ップ障害情報に設定し、これらの情報に対応するバッチ
管理ファイル24のファイル更新を行う。
【0045】次に、ステップS8では、ファイルハンド
ラ27に対し、当該ジョブの開始モード、再開始タイプ
等の基本情報を通知する。再開始の場合は、ステップS
2及びステップS5で展開並びに編集を行ったファイル
位置付情報もファイルハンドラ27に対し通知する。
【0046】次に、ステップS9では、上記展開された
ジョブステップ定義情報から、呼び出すべき業務アプリ
ケーションを認識すると共に、同定義情報から必要情報
をバッチAPIに設定し、業務アプリケーションの呼出
準備を行う。
【0047】次に、ステップS10では、当該バッチジ
ョブでの業務アプリケーション呼び出し回数を判断し、
2回目以降の呼び出し(すなわち、業務アプリケーショ
ン処理部26からの処理返却後の呼び出し)であれば、
ステップS11にて、ステップS4またはステップS6
で設定したバッチAPIの呼出区分に「継続」を再設定
する。
【0048】次に、ステップS12では、バッチAPI
により、ステップS9で確定した業務アプリケーション
の呼び出しを行う。
【0049】次に、ステップS13では、業務アプリケ
ーション処理部26からバッチAPIによって返却され
たAP完了区分を判断する。上記AP完了区分が「業務
処理終了」であれば、ステップS15にて、当該バッチ
ジョブの終了情報を上記ジョブステップ再開始情報及び
ジョブステップ障害情報に設定し、上記設定でのデータ
の整合性を保証するためにバッチ管理ファイル24の更
新を行い、当該バッチジョブを終了する。さもなくて、
上記AP完了区分が「トランザクション終了」であれ
ば、ステップS14にて、コミット取得処理を行った
後、ステップS10以降の一連の処理を、上記AP完了
区分が「業務処理終了」となるまで繰り返し行う。
【0050】図4は、本発明の実施の形態に係るジョブ
のリカバリ方式の1サブルーチンである「業務アプリケ
ーション」での動作を示すフローチャートである。
【0051】なお、「業務アプリケーション」は、図3
のステップS12に示すサブルーチンであり、ファイル
ハンドラ27に対するすべての要求毎に、ファイルハン
ドラ27から返却される処理状態をファイルAPIによ
って判断し、アクセス状態が異常であることを認識した
場合は、異常終了APIを利用して当該バッチジョブの
異常終了要求を行う。当該バッチジョブが異常終了する
ことで、OSの実装する自動ロールバック機能により直
前の処理成立ポイントの状態まで、各種データベース、
及び、リカバリ対象であるバッチ管理ファイル24内の
上記ジョブステップ再開始情報が復旧される。
【0052】以下、図1乃至図3を参照しつつ、図4に
示すフローチャートを使用して「業務アプリケーショ
ン」での動作を説明する。
【0053】まず、ステップS20では、バッチAPI
の呼出区分を判断し、該呼出区分が「開始」の場合は、
ステップS21にて、各種初期処理を実行し、次いで、
ステップS22にて、利用する各種ファイルやデータベ
ースに対するオープン要求をファイルハンドラ27に対
して行い、ステップS24に移る。ファイルハンドラ2
7に対する処理要求は、ファイルAPIに必要情報を設
定して行う。
【0054】上記呼出区分が、「再開始」の場合は、ス
テップS23にて、利用する各種ファイルやデータベー
スに対するオープン要求のみをファイルハンドラ27に
対して行い、ステップS24に移る。
【0055】上記呼出区分が、「継続」の場合は、単に
下記のステップS24に移る。
【0056】ステップS24では、入力トランザクショ
ンファイルの読込み要求をファイルハンドラ27に対し
て行う。なお、入力トランザクションファイルを複数利
用する業務アプリケーションは、本処理をファイル数分
行い、比較、統合等の編集処理も行う。
【0057】次に、ステップS25では、ファイルハン
ドラ27から返却されたファイルAPIによりアクセス
状態を判断し、該アクセス状態が正常状態の場合は、下
記のステップS26乃至ステップS30までの一連の処
理を実行し、さもなくて、データエンドの場合は、下記
のステップS31とステップS32の処理を実行し、い
ずれの場合も、その後は、バッチ・コントローラ23に
処理を返却する。
【0058】ステップS26では、入力したトランザク
ションレコード内容に従い、当該データベースの読込み
要求をファイルハンドラ27に対して行う。
【0059】次に、ステップS27では、入力したデー
タベースレコードの編集・メモリ更新及び出力トランザ
クションレコードの編集を行う。
【0060】次に、ステップS28では、ステップS2
7で編集したデータベースレコードの更新要求をファイ
ルハンドラ27に対して行う。
【0061】次に、ステップS29では、ステップS2
7で編集した出力トランザクションレコードの書込み要
求をファイルハンドラ27に対して行う。
【0062】なお、入力トランザクションレコード内容
により複数のデータベースを更新する場合と、複数の出
力トランザクションレコードを出力する業務アプリケー
ションを実行する場合は、上記のステップS26乃至ス
テップS28の一連の処理をを当該レコード数分行う。
【0063】最後に、ステップS30では、バッチAP
IのAP完了区分に「トランザクション終了」を設定
し、バッチ・コントローラ23に処理を返却する。
【0064】他方、ステップS31では、利用したすべ
てのファイルやデータベースに対するクローズ要求をフ
ァイルハンドラ27に対して行う。
【0065】その後、ステップS32では、バッチAP
IのAP完了区分に、「業務処理終了」を設定し、バッ
チ・コントローラ23に処理を返却する。
【0066】図5は、本発明の実施の形態に係るジョブ
の再開始方式の1サブルーチンである「コミット取得処
理」での動作を示すフローチャートである。
【0067】以下、図1乃至図4を参照しつつ、図5に
示すフローチャートを使用して「コミット取得処理」で
の動作を説明する。
【0068】まず、ステップS40では、ジョブステッ
プ再開始情報2上のトランザクション通番に対し、業務
アプリケーションからの処理返却回数を加算し、更に、
コミット通番に対してはコミット間隔回数、すなわち前
回の実コミット実行後から発信されたコミット処理要求
の発信回数の加算を行う。
【0069】ステップS41では、上記したジョブステ
ップ定義情報に含まれるコミット間隔と、上記のステッ
プS40で加算したコミット間隔回数の比較を行い、上
記コミット間隔回数が上記ジョブステップ定義情報に含
まれるコミット間隔以上の場合にのみ、ステップS42
乃至ステップS47の一連の実コミット処理を行い、そ
の後は、要求元に処理を返却する。
【0070】さもなくて、上記コミット間隔回数が上記
ジョブステップ定義情報に含まれるコミット間隔未満の
場合には、実コミット処理は行わないで要求元に処理を
返却する。
【0071】ステップS42では、上記コミット通番に
対して実コミット処理回数の加算を行う。
【0072】ステップS43では、当該バッチジョブで
使用中であるすべての出力標準ファイルの強制出力(物
理I/O)要求をファイルハンドラ27に対して行う。
【0073】ステップS44とステップS45では、フ
ァイルハンドラ27によって更新されたファイル位置付
け情報用メモリ28を参照し、上記ジョブステップ再開
始情報への取込を行い、データの一致を保証するため
に、バッチ管理ファイル24内の対応するジョブステッ
プ再開始情報レコードの更新も行う。
【0074】次に、ステップS46では、コミット命令
を実行し、すべてのデータベース及びステップS45で
更新を行ったバッチ管理ファイル24の実更新(物理I
/Oに対する更新)を行う。
【0075】最後に、ステップS47では、上記コミッ
ト間隔回数のリセットを行い、要求元に処理を返却す
る。
【0076】なお、上記のステップS22乃至ステップ
S24,ステップS26、ステップS28、ステップS
29及びステップS43でファイルハンドラ27に対し
て要求される各種ファイル操作は、下記サブルーチンの
「各種ハンドラ」で実行される。
【0077】図6は、本発明の実施の形態に係るジョブ
のリカバリ方式の1サブルーチンである「各種ハンド
ラ」での動作を示すフローチャートである。
【0078】以下、図1乃至図5を参照しつつ、図6に
示すフローチャートを使用して「各種ハンドラ」での動
作を説明する。
【0079】まず、ステップS50では、ファイルAP
Iの処理要求の判定を行い、該処理要求がオープン要求
の場合にのみ、状況に応じてステップS51乃至ステッ
プS58の処理を行う。上記処理要求がオープン要求以
外の場合は、ステップS60にて、処理要求に応じた各
種ファイルのアクセスを行う。
【0080】ステップS51では、予めバッチ・コント
ローラ23から通知された情報により、当該バッチジョ
ブの開始モードを判断し、該開始モードが「再開始」の
場合は、下記のステップS52からの処理、該開始モー
ドが「通常開始」の場合は、下記のステップS58から
の処理を行う。
【0081】ステップS52及びステップS53では、
ファイル位置付け情報用メモリ28を検索し、オープン
要求されたファイル又はデータベースの位置付情報が存
在するか否かを判断する。上記の位置付情報が有りの場
合は、再オープン要求の場合と判断し、下記のステップ
S54からの処理に移る。さもなくて、上記の位置付情
報が無しの場合には、当該バッチジョブは再開始ではあ
るが、初期オープン要求の場合と判断し、ステップS5
8からの処理に移る。
【0082】次に、ステップS54では、ファイルAP
Iに指定されているファイル又はデータベースの処理モ
ード、すなわちオープンモードを判断する。要求された
処理モードが「出力モード」の場合は、前回異常終了前
に成立したレコードを保証するために、ステップS55
にて、処理モードを「追加モード」に変更する。
【0083】次に、ステップS56では、上記要求され
たファイル又はデータベースのオープン処理を行う。
【0084】次に、ステップS57では、ファイル位置
付け情報用メモリ28内の当該ファイルの位置付情報に
従って、上記ファイル又はデータベース内の当該レコー
ドへの位置付け処理を行う。
【0085】他方、ステップS58では、上記要求され
たファイル又はデータベースのオープン処理を行う。
【0086】次に、ステップS59では、ファイル位置
付け情報用メモリ28内の当該ファイル位置付情報エリ
アに必要情報の設定を行う。この時、初期オープン処理
時は、上記ファイル位置付情報エリア内の空きエリアに
ファイル名またはデータベース名の設定及び使用ファイ
ル数の加算を行い、その他のアクセス要求時には、当該
ファイル位置付情報エリアに上記位置付情報を設定す
る。処理対象が標準ファイルの場合はファイルカレンシ
ィ情報を、データベースの場合は物理キーを上記位置付
情報として設定する。
【0087】最後に、ファイルハンドラ27が制御の流
れを要求元に返す場合には、上記すべてのアクセス要求
に対して、正常、異常に関わらず、現在の処理状態をフ
ァイルAPIにて要求元に返却する。
【0088】ファイルハンドラ27にて異常検出がなさ
れた場合には、該異常に関する障害情報を編集し、該編
集した障害情報を業務アプリケーション処理部26に伝
達し、最終的にはモニタ端末用のメッセージとしてモニ
タ端末(図示は省略)上に表示する。
【0089】なお、予めジョブステップ定義情報に再開
始タイプを「トランザクション再開始」として登録して
おくことで、バッチジョブにおいても1トランザクショ
ン単位(定義の仕方によっては数トランザクション単
位)での再開始が可能となり、オンライン処理業務との
同一データベースの更新を伴う並行稼働が可能となる。
【0090】また、バッチジョブにおけるコミット処理
は、物理I/Oの作動を伴うため、当該バッチジョブの
処理時間に影響を与え、他方、コミット間隔を大きくす
ることはオンライン業務の運用に影響を与えるが、この
ような事情に対し、ジョブステップ定義情報の登録時
に、当該バッチジョブの処理特性、実行時間等を慎重に
検討してコミット間隔を設定することが可能となる。
【0091】また、各バッチジョブを管理する前述のバ
ッチ管理ファイルを、常駐型の別ジョブと共有する方式
とし、当該常駐型の別ジョブに対してコマンド要求する
ことで、オンライン業務の運用に影響を与えない範囲で
バッチ管理情報を動的に変更することも可能である。
【0092】さらに、前述の再開始タイプを「全体再開
始」とすることで異常終了後にファイル及びデータベー
ス環境をすべて復旧して通常開始で再実行することや、
上記再開始タイプを「チェックポイント再開始」とし、
業務アプリケーションにチェックポイント情報の取得及
び展開要求を組み込むことで、異常終了後に成立チェッ
クポイントからの再開始を行うことも可能となる。但
し、上記の「全体再開始」及び「チェックポイント再開
始」を適用するバッチジョブは、他ジョブ(特にオンラ
イン)との共有ファイルの更新を伴わないことが前提と
なる。
【0093】
【発明の効果】以上説明した本発明によれば、同一デー
タベースの更新を伴うオンライン処理業務とバッチ処理
業務とを並行処理させる情報処理装置におけるリカバリ
処理が可能である。
【0094】また、上記のリカバリ処理は、上記処理単
位で使用するファイルやデータベースの再位置付けも含
めた包括的なリカバリ処理を実現しているので、実用的
なリカバリ処理が可能である。
【0095】また、上記のリカバリ処理は、任意の処理
単位で実施することが可能である。
【0096】また、バッチジョブにおけるコミット処理
は、当該バッチジョブの処理特性、実行時間等から割り
出した適切なコミット間隔を、ジョブステップ定義情報
の登録時に設定することが可能である。
【0097】さらに、オンライン業務の運用に影響を与
えない範囲で、上記のバッチ管理情報を動的に変更する
ことも可能である。
【図面の簡単な説明】
【図1】本発明の実施の形態に係るジョブのリカバリ方
式で使用するバッチ管理情報の構成を示すブロック図で
ある。
【図2】本発明の実施の形態に係るジョブのリカバリ方
式の全体構成を示すブロック図である。
【図3】本発明の実施の形態に係るジョブのリカバリ方
式のメインルーチンでの動作を示したフローチャートで
ある。
【図4】本発明の実施の形態に係るジョブのリカバリ方
式の1サブルーチンである「業務アプリケーション」で
の動作を示すフローチャートである。
【図5】本発明の実施の形態に係るジョブのリカバリ方
式の1サブルーチンである「コミット取得処理」での動
作を示すフローチャートである。
【図6】本発明の実施の形態に係るジョブのリカバリ方
式の1サブルーチンである「各種ハンドラ」での動作を
示すフローチャートである。
【符号の説明】
1 バッチ管理情報 2 ジョブステップ再開始情報 3 ジョブステップ障害情報 21 実行JCL格納ファイル 22 制御部 23 バッチコントローラ 24 バッチ管理ファイル 25 ジョブ情報用メモリ 26 業務アプリケーション処理部 27 ファイルハンドラ 28 ファイル位置付け情報用メモリ 29 データベース群 210 標準ファイル群

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 実行すべき複数のジョブの各々に対応す
    るジョブ制御言語を格納したジョブ制御言語格納ファイ
    ルと、一つ以上のデータベース及び標準ファイルと、前
    記複数のジョブの各々のジョブステップ定義情報とリカ
    バリ制御に必要な再開始情報と障害発生時の障害情報と
    を格納するためのバッチ管理ファイルと、前記複数のジ
    ョブの並行処理を制御する制御部とを備えた情報処理装
    置のためのジョブのリカバリ方式であって、 前記制御部は、 前記複数のジョブの各々に含まれる各ジョブステップの
    所定の処理単位毎の実行開始又は実行再開始に先立っ
    て、前記バッチ管理ファイル上の当該ジョブステップに
    対応したバッチ管理情報を読み込む手段と、 前記複数のジョブの各々の前記各ジョブステップ実行時
    に、前記所定の処理単位でのリカバリ制御に必要な再開
    始情報と、障害発生時の障害情報とを収集し、前記収集
    された各情報でもって前記読み込まれたバッチ管理情報
    を更新すると共に、前記更新後の情報と同一の情報でも
    って前記バッチ管理ファイルを更新する手段と、 前記データベース又はファイルのオープン直後又はアク
    セス直後には、当該データベース又はファイルに関する
    ファイル位置付け情報を収集すると共に、前記収集され
    たファイル位置付け情報を前記再開始情報に取り込む手
    段と、 障害発生後のリカバリ時点では、前記収集されたバッチ
    管理情報を使用してリカバリ処理を実行する手段と、を
    備えたことを特徴とするジョブのリカバリ方式。
  2. 【請求項2】 前記複数のジョブの構成は、前記データ
    ベースの内の少なくとも一つを共有する複数のジョブの
    存在を許し、及び/又は、オンラインジョブとバッチジ
    ョブとの混在を許すこと、を特徴とする請求項1記載の
    ジョブのリカバリ方式。
  3. 【請求項3】 前記バッチ管理ファイルのファイル編成
    を相対編成ファイルとしたこと、を特徴とする請求項1
    又は請求項2記載のジョブのリカバリ方式。
  4. 【請求項4】 前記所定の処理単位をジョブステップ全
    体の処理又はトランザクション単位の処理又はコミット
    単位の処理又は任意のチェックポイント間の処理とした
    こと、を特徴とする請求項1乃至3のいずれか1項に記
    載のジョブのリカバリ方式。
  5. 【請求項5】 実行すべき複数のジョブの各々に対応す
    るジョブ制御言語を格納したジョブ制御言語格納ファイ
    ルと、一つ以上のデータベース及び標準ファイルと、前
    記複数のジョブの各々のジョブステップ定義情報とリカ
    バリ制御に必要な再開始情報と障害発生時の障害情報と
    を格納するためのバッチ管理ファイルと、前記複数のジ
    ョブの並行処理を制御する制御部とを備えた情報処理装
    置であって、 前記制御部は、 前記複数のジョブの各々に含まれる各ジョブステップの
    所定の処理単位毎の実行開始又は実行再開始に先立っ
    て、前記バッチ管理ファイル上の当該ジョブステップに
    対応したバッチ管理情報を読み込む手段と、 前記複数のジョブの各々の前記各ジョブステップ実行時
    に、前記所定の処理単位でのリカバリ制御に必要な再開
    始情報と、障害発生時の障害情報とを収集し、前記収集
    された各情報でもって前記読み込まれたバッチ管理情報
    を更新すると共に、前記更新後の情報と同一の情報でも
    って前記バッチ管理ファイルを更新する手段と、 前記データベース又はファイルのオープン直後又はアク
    セス直後には、当該データベース又はファイルに関する
    ファイル位置付け情報を収集すると共に、前記収集され
    たファイル位置付け情報を前記再開始情報に取り込む手
    段と、 障害発生後のリカバリ時点では、前記収集されたバッチ
    管理情報を使用してリカバリ処理を実行する手段と、を
    備えたことを特徴とする情報処理装置。
  6. 【請求項6】 実行すべき複数のジョブの各々に対応す
    るジョブ制御言語を格納したジョブ制御言語格納ファイ
    ルと、一つ以上のデータベース及び標準ファイルと、前
    記各ジョブのジョブステップ定義情報とリカバリ制御に
    必要な再開始情報と障害発生時の障害情報とを格納する
    ためのバッチ管理ファイルと、前記複数のジョブの並行
    処理を制御する制御部とを備えた情報処理装置のための
    ジョブのリカバリ方法であって、 前記制御部は、 前記複数のジョブの各々に含まれる各ジョブステップの
    所定の処理単位毎の実行開始又は実行再開始に先立っ
    て、前記バッチ管理ファイル上の当該ジョブステップに
    対応したバッチ管理情報を読み込むステップと、 前記複数のジョブの各々の前記各ジョブステップ実行時
    に、前記所定の処理単位でのリカバリ制御に必要な再開
    始情報と、障害発生時の障害情報とを収集し、前記収集
    された各情報でもって前記読み込まれたバッチ管理情報
    を更新すると共に、前記更新後の情報と同一の情報でも
    って前記バッチ管理ファイルを更新するステップと、 前記データベース又はファイルのオープン直後又はアク
    セス直後には、当該データベース又はファイルに関する
    ファイル位置付け情報を収集すると共に、前記収集され
    たファイル位置付け情報を前記再開始情報に取り込むス
    テップと、 障害発生後のリカバリ時点では、前記収集されたバッチ
    管理情報を使用してリカバリ処理を実行するステップ
    と、を実行することを特徴とするジョブのリカバリ方
    法。
JP11125147A 1999-04-30 1999-04-30 ジョブのリカバリ方式 Pending JP2000315190A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11125147A JP2000315190A (ja) 1999-04-30 1999-04-30 ジョブのリカバリ方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11125147A JP2000315190A (ja) 1999-04-30 1999-04-30 ジョブのリカバリ方式

Publications (1)

Publication Number Publication Date
JP2000315190A true JP2000315190A (ja) 2000-11-14

Family

ID=14903039

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11125147A Pending JP2000315190A (ja) 1999-04-30 1999-04-30 ジョブのリカバリ方式

Country Status (1)

Country Link
JP (1) JP2000315190A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003085021A (ja) * 2001-09-07 2003-03-20 Nippon Soken Holdings:Kk リカバリ・リスタート機能を備えたバッチ処理システム、リカバリ・リスタート機能を備えたバッチ処理システム用プログラム、及びそのプログラムを記録した記録媒体
JP2010231682A (ja) * 2009-03-30 2010-10-14 Hitachi Ltd バッチ処理実行システム及びその方法
JP2013506199A (ja) * 2009-09-25 2013-02-21 アビニシオ テクノロジー エルエルシー グラフベース・アプリケーションにおけるトランザクションの処理

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003085021A (ja) * 2001-09-07 2003-03-20 Nippon Soken Holdings:Kk リカバリ・リスタート機能を備えたバッチ処理システム、リカバリ・リスタート機能を備えたバッチ処理システム用プログラム、及びそのプログラムを記録した記録媒体
JP2010231682A (ja) * 2009-03-30 2010-10-14 Hitachi Ltd バッチ処理実行システム及びその方法
JP2013506199A (ja) * 2009-09-25 2013-02-21 アビニシオ テクノロジー エルエルシー グラフベース・アプリケーションにおけるトランザクションの処理

Similar Documents

Publication Publication Date Title
JP3270216B2 (ja) ファイル名検出方式
US7269607B2 (en) Method and information technology infrastructure for establishing a log point for automatic recovery of federated databases to a prior point in time
US20080276239A1 (en) Recovery and restart of a batch application
JPS633341B2 (ja)
US20080120618A1 (en) Issuing syncpoints during execution of a batch application to minimize or eliminate periods of record unavailability due to batch related record locking
CN116107807B (zh) 数据库中数据备份时获取全局一致性点位的方法及装置
US5745674A (en) Management of units of work on a computer system log
CN112765126B (zh) 数据库事务的管理方法、装置、计算机设备和存储介质
WO2019196227A1 (zh) 平台整合的方法、装置、计算机设备和存储介质
US6092084A (en) One system of a multisystem environment taking over log entries owned by another system
JP2000315190A (ja) ジョブのリカバリ方式
JP2006338197A (ja) トランザクション制御プログラム、トランザクション制御方法及びトランザクション処理システム
US6076095A (en) Method of one system of a multisystem environment taking over log entries owned by another system
JPH08286964A (ja) 分散トランザクション処理方法
JP2003280963A (ja) 文書管理システム、復旧方法、復旧を実行させるためのプログラム、該プログラムを記録した記録媒体
JP4311059B2 (ja) トランザクション制御方法
JPH0561748A (ja) データベース・アクセスにおける同期確認の自動化方式
JP6891533B2 (ja) データベース装置
EP1507219A2 (en) Computer system and program for improved file system performance
CN116431649B (zh) 一种数据库实例锁冲突管理系统和方法
JPH03196222A (ja) プログラム入替え方法
JP2818100B2 (ja) データ処理装置
JP2001084234A (ja) オンライン処理システム
JP2008234142A (ja) バッチ処理回復方法とシステムおよびプログラム
JP2004054816A (ja) データベース管理方法および装置