JP2000339183A - ワークエリアのデータセット管理方式 - Google Patents
ワークエリアのデータセット管理方式Info
- Publication number
- JP2000339183A JP2000339183A JP11145311A JP14531199A JP2000339183A JP 2000339183 A JP2000339183 A JP 2000339183A JP 11145311 A JP11145311 A JP 11145311A JP 14531199 A JP14531199 A JP 14531199A JP 2000339183 A JP2000339183 A JP 2000339183A
- Authority
- JP
- Japan
- Prior art keywords
- data set
- backup
- work area
- management table
- members
- 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
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
(57)【要約】
【課題】 上位層でのデータセットをバックアップする
ためのプログラムを不要とするワークエリアのデータセ
ット管理方式を提供する。 【解決手段】 トランザクション実行時に最初にあるデ
ータセット107のあるメンバが更新されたら、更新前
の値をロールバックエリア105に待避する。トランザ
クション実行時にあるデータセット107のあるメンバ
が更新され、そのデータセットがバックアップ対象なら
ばそのメンバを含むブロックの識別子をバックアップ管
理テーブル103に書き込む。異常トランザクション終
了時にロールバックエリアの内容をデータセットに復旧
する。正常トランザクション終了時にバックアップ管理
テーブル内の識別子に対応したブロックをバックアップ
ファイル109に待避する。
ためのプログラムを不要とするワークエリアのデータセ
ット管理方式を提供する。 【解決手段】 トランザクション実行時に最初にあるデ
ータセット107のあるメンバが更新されたら、更新前
の値をロールバックエリア105に待避する。トランザ
クション実行時にあるデータセット107のあるメンバ
が更新され、そのデータセットがバックアップ対象なら
ばそのメンバを含むブロックの識別子をバックアップ管
理テーブル103に書き込む。異常トランザクション終
了時にロールバックエリアの内容をデータセットに復旧
する。正常トランザクション終了時にバックアップ管理
テーブル内の識別子に対応したブロックをバックアップ
ファイル109に待避する。
Description
【0001】
【発明の属する技術分野】本発明は、プログラムの実行
中にワークエリアに記憶されるデータセットの管理方式
に関する。
中にワークエリアに記憶されるデータセットの管理方式
に関する。
【0002】
【従来の技術】従来の技術においては、データセットを
バックアップするためのシステム側で用意する方式がな
かったので、データセットとそのバックアップファイル
はシステムの上位層で個々に管理されていた。
バックアップするためのシステム側で用意する方式がな
かったので、データセットとそのバックアップファイル
はシステムの上位層で個々に管理されていた。
【0003】また、従来の技術においては、データセッ
トをロールバックするためにワークエリア上にデータセ
ットと同容量の領域を設けていた。
トをロールバックするためにワークエリア上にデータセ
ットと同容量の領域を設けていた。
【0004】
【発明が解決しようとする課題】従って、上位層である
業務処理プログラムの各々の開発者が各自でバックアッ
プファイルを意識してそのプログラムの開発を進めるた
め、プログラミング上の誤りも少なくなかった。またデ
ータセットと同一の形式でバックアップファイルを設計
・定義するため作業的にも無駄が多かった。
業務処理プログラムの各々の開発者が各自でバックアッ
プファイルを意識してそのプログラムの開発を進めるた
め、プログラミング上の誤りも少なくなかった。またデ
ータセットと同一の形式でバックアップファイルを設計
・定義するため作業的にも無駄が多かった。
【0005】また、ロールバックのためのデータセット
と同容量の領域をワークエリアに設けていたので、ワー
クエリアの容量を圧迫していた。
と同容量の領域をワークエリアに設けていたので、ワー
クエリアの容量を圧迫していた。
【0006】本発明は、上位層でのデータセットをバッ
クアップするためのプログラムを不要とするワークエリ
アのデータセット管理方式を提供することを目的とす
る。
クアップするためのプログラムを不要とするワークエリ
アのデータセット管理方式を提供することを目的とす
る。
【0007】また、本発明は、ロールバックに必要なワ
ークエリア上の容量を削減することが可能なワークエリ
アのデータセット管理方式を提供することを目的とす
る。
ークエリア上の容量を削減することが可能なワークエリ
アのデータセット管理方式を提供することを目的とす
る。
【0008】
【課題を解決するための手段】本発明によるワークエリ
アのデータセット管理方式は、各々が複数のメンバより
構成される複数のデータセットを一時記憶するためのワ
ークエリアと、少なくとも1つのデータセットの少なく
とも1つのメンバの初期値を記憶するためのロールバッ
クエリアと、前記複数のデータセットの各々がバックア
ップの対象であるか否かを管理するデータセット管理テ
ーブルと、前記複数のデータセットのうちのバックアッ
プの対象とするデータセットの各メンバの更新の有無を
管理するバックアップ管理テーブルと、少なくとも1つ
のデータセットの少なくとも1つのメンバをバックアッ
プするためのバックアップファイルと、プログラムの実
行により何れかのデータセットの何れかのメンバが変更
されたときに、そのメンバの変更がそのメンバについて
の最初の変更であるならば、変更前のメンバの値を前記
ロールバックエリアに待避させる待避手段と、前記プロ
グラムの実行により何れかデータセットの何れかのメン
バが更新されたときに、そのデータセットがバックアッ
プの対象であるか否かを前記データセット管理テーブル
を参照して判定して、そうであればそのデータセットの
そのメンバについて更新があったことを前記バックアッ
プ管理テーブルに書き込むバックアップ管理テーブル更
新手段と、前記プログラムの終了時に正常終了であるか
異常終了であるかを判定する終了状態判定手段と、前記
プログラムが異常終了したならば、前記ロールバックエ
リアに記憶されているメンバを前記ワークエリアのデー
タセットに書き戻す復旧手段と、前記プログラムが正常
終了したならば、前記バックアップ管理テーブルに更新
があったことが記憶されているメンバの値を前記ワーク
エリアから読み込んで前記バックアップファイルに書き
込むバックアップ手段と、を備えることを特徴とする。
アのデータセット管理方式は、各々が複数のメンバより
構成される複数のデータセットを一時記憶するためのワ
ークエリアと、少なくとも1つのデータセットの少なく
とも1つのメンバの初期値を記憶するためのロールバッ
クエリアと、前記複数のデータセットの各々がバックア
ップの対象であるか否かを管理するデータセット管理テ
ーブルと、前記複数のデータセットのうちのバックアッ
プの対象とするデータセットの各メンバの更新の有無を
管理するバックアップ管理テーブルと、少なくとも1つ
のデータセットの少なくとも1つのメンバをバックアッ
プするためのバックアップファイルと、プログラムの実
行により何れかのデータセットの何れかのメンバが変更
されたときに、そのメンバの変更がそのメンバについて
の最初の変更であるならば、変更前のメンバの値を前記
ロールバックエリアに待避させる待避手段と、前記プロ
グラムの実行により何れかデータセットの何れかのメン
バが更新されたときに、そのデータセットがバックアッ
プの対象であるか否かを前記データセット管理テーブル
を参照して判定して、そうであればそのデータセットの
そのメンバについて更新があったことを前記バックアッ
プ管理テーブルに書き込むバックアップ管理テーブル更
新手段と、前記プログラムの終了時に正常終了であるか
異常終了であるかを判定する終了状態判定手段と、前記
プログラムが異常終了したならば、前記ロールバックエ
リアに記憶されているメンバを前記ワークエリアのデー
タセットに書き戻す復旧手段と、前記プログラムが正常
終了したならば、前記バックアップ管理テーブルに更新
があったことが記憶されているメンバの値を前記ワーク
エリアから読み込んで前記バックアップファイルに書き
込むバックアップ手段と、を備えることを特徴とする。
【0009】また、本発明によるワークエリアのデータ
セット管理方式は、上記のワークエリアのデータセット
管理方式において、前記バックアップ管理テーブルは前
記メンバの複数をブロック化して管理し、前記バックア
ップ管理テーブル更新手段は、メンバについて更新があ
ったことを前記バックアップ管理テーブルに書き込む際
に、そのメンバが属するブロックの単位で書き込みを行
い、前記バックアップ手段は、メンバを前記バックアッ
プファイルに書き込む際に、ブロック単位で書き込むこ
とを特徴とする。
セット管理方式は、上記のワークエリアのデータセット
管理方式において、前記バックアップ管理テーブルは前
記メンバの複数をブロック化して管理し、前記バックア
ップ管理テーブル更新手段は、メンバについて更新があ
ったことを前記バックアップ管理テーブルに書き込む際
に、そのメンバが属するブロックの単位で書き込みを行
い、前記バックアップ手段は、メンバを前記バックアッ
プファイルに書き込む際に、ブロック単位で書き込むこ
とを特徴とする。
【0010】更に本発明によるワークエリアのデータセ
ット管理方式は、上記のワークエリアのデータセット管
理方式において、前記プログラムの開始時に前記バック
アップファイルに記憶されているメンバを前記ワークエ
リアのデータセットに書き戻す初期化手段を更に備える
ことを特徴とする。
ット管理方式は、上記のワークエリアのデータセット管
理方式において、前記プログラムの開始時に前記バック
アップファイルに記憶されているメンバを前記ワークエ
リアのデータセットに書き戻す初期化手段を更に備える
ことを特徴とする。
【0011】更に本発明によるワークエリアのデータセ
ット管理方式は、複数のメンバより構成されるデータセ
ットを一時記憶するためのワークエリアと、前記データ
セットの少なくとも1つのメンバの初期値を記憶するた
めのロールバックエリアと、前記データセットの各メン
バの更新の有無を管理するバックアップ管理テーブル
と、前記データセットの少なくとも1つのメンバをバッ
クアップするためのバックアップファイルと、プログラ
ムの実行により前記データセットの何れかのメンバが変
更されたときに、そのメンバの変更がそのメンバについ
ての最初の変更であるならば、変更前のメンバの値を前
記ロールバックエリアに待避させる待避手段と、前記プ
ログラムの実行により前記データセットの何れかのメン
バが更新されたときに、そのメンバについて更新があっ
たことを前記バックアップ管理テーブルに書き込むバッ
クアップ管理テーブル更新手段と、前記プログラムの終
了時に正常終了であるか異常終了であるかを判定する終
了状態判定手段と、前記プログラムが異常終了したなら
ば、前記ロールバックエリアに記憶されているメンバを
前記ワークエリアのデータセットに書き戻す復旧手段
と、前記プログラムが正常終了したならば、前記バック
アップ管理テーブルに更新があったことが記憶されてい
るメンバの値を前記ワークエリアから読み込んで前記バ
ックアップファイルに書き込むバックアップ手段と、を
備えることを特徴とする。
ット管理方式は、複数のメンバより構成されるデータセ
ットを一時記憶するためのワークエリアと、前記データ
セットの少なくとも1つのメンバの初期値を記憶するた
めのロールバックエリアと、前記データセットの各メン
バの更新の有無を管理するバックアップ管理テーブル
と、前記データセットの少なくとも1つのメンバをバッ
クアップするためのバックアップファイルと、プログラ
ムの実行により前記データセットの何れかのメンバが変
更されたときに、そのメンバの変更がそのメンバについ
ての最初の変更であるならば、変更前のメンバの値を前
記ロールバックエリアに待避させる待避手段と、前記プ
ログラムの実行により前記データセットの何れかのメン
バが更新されたときに、そのメンバについて更新があっ
たことを前記バックアップ管理テーブルに書き込むバッ
クアップ管理テーブル更新手段と、前記プログラムの終
了時に正常終了であるか異常終了であるかを判定する終
了状態判定手段と、前記プログラムが異常終了したなら
ば、前記ロールバックエリアに記憶されているメンバを
前記ワークエリアのデータセットに書き戻す復旧手段
と、前記プログラムが正常終了したならば、前記バック
アップ管理テーブルに更新があったことが記憶されてい
るメンバの値を前記ワークエリアから読み込んで前記バ
ックアップファイルに書き込むバックアップ手段と、を
備えることを特徴とする。
【0012】更に本発明によるワークエリアのデータセ
ット管理方式は、上記のワークエリアのデータセット管
理方式において、前記バックアップ管理テーブルは前記
メンバの複数をブロック化して管理し、前記バックアッ
プ管理テーブル更新手段は、メンバについて更新があっ
たことを前記バックアップ管理テーブルに書き込む際
に、そのメンバが属するブロックの単位で書き込みを行
い、前記バックアップ手段は、メンバを前記バックアッ
プファイルに書き込む際に、ブロック単位で書き込むこ
とを特徴とする。
ット管理方式は、上記のワークエリアのデータセット管
理方式において、前記バックアップ管理テーブルは前記
メンバの複数をブロック化して管理し、前記バックアッ
プ管理テーブル更新手段は、メンバについて更新があっ
たことを前記バックアップ管理テーブルに書き込む際
に、そのメンバが属するブロックの単位で書き込みを行
い、前記バックアップ手段は、メンバを前記バックアッ
プファイルに書き込む際に、ブロック単位で書き込むこ
とを特徴とする。
【0013】更に本発明によるワークエリアのデータセ
ット管理方式は、上記のワークエリアのデータセット管
理方式において、前記プログラムの開始時に前記バック
アップファイルに記憶されているメンバを前記ワークエ
リアのデータセットに書き戻す初期化手段を更に備える
ことを特徴とする。
ット管理方式は、上記のワークエリアのデータセット管
理方式において、前記プログラムの開始時に前記バック
アップファイルに記憶されているメンバを前記ワークエ
リアのデータセットに書き戻す初期化手段を更に備える
ことを特徴とする。
【0014】更に本発明によるワークエリアのデータセ
ット管理方式は、複数のメンバより構成されるデータセ
ットを一時記憶するためのワークエリアと、前記データ
セットの少なくとも1つのメンバの初期値を記憶するた
めのロールバックエリアと、プログラムの実行により前
記データセットの何れかのメンバが変更されたときに、
そのメンバの変更がそのメンバについての最初の変更で
あるならば、変更前のメンバの値を前記ロールバックエ
リアに待避させる待避手段と、前記プログラムが要求す
るときに、前記ロールバックエリアに記憶されているメ
ンバを前記ワークエリアのデータセットに書き戻す復旧
手段と、を備えることを特徴とする。
ット管理方式は、複数のメンバより構成されるデータセ
ットを一時記憶するためのワークエリアと、前記データ
セットの少なくとも1つのメンバの初期値を記憶するた
めのロールバックエリアと、プログラムの実行により前
記データセットの何れかのメンバが変更されたときに、
そのメンバの変更がそのメンバについての最初の変更で
あるならば、変更前のメンバの値を前記ロールバックエ
リアに待避させる待避手段と、前記プログラムが要求す
るときに、前記ロールバックエリアに記憶されているメ
ンバを前記ワークエリアのデータセットに書き戻す復旧
手段と、を備えることを特徴とする。
【0015】
【発明の実施の形態】[実施形態1]実施形態1につい
て図面を参照して説明する。
て図面を参照して説明する。
【0016】本発明の実施形態は、システム構築にあた
り、ワークエリア上に定義された各種データセットの復
旧を利用者が意識することなく行う構成を提供するもの
である。本発明の実施形態により可能な復旧内容は以下
の2種類である。
り、ワークエリア上に定義された各種データセットの復
旧を利用者が意識することなく行う構成を提供するもの
である。本発明の実施形態により可能な復旧内容は以下
の2種類である。
【0017】・システム再起動時のデータセット内容復
旧 ・トランザクション処理異常終了時のデータセット内容
復旧 図1において、本実施形態で使用するテーブル、エリア
はデータセット管理テーブル101、テーブルバックア
ップ管理テーブル103及びロールバックエリア105
である。
旧 ・トランザクション処理異常終了時のデータセット内容
復旧 図1において、本実施形態で使用するテーブル、エリア
はデータセット管理テーブル101、テーブルバックア
ップ管理テーブル103及びロールバックエリア105
である。
【0018】テーブル管理テーブル101はシステムに
登録されている各種データセットの管理に用いられる。
管理内容は、データセットを構成するメンバのバイト数
(データセットに対して1つの値が定まり、メンバ間で
共通)、バックアップ対象のデータセット等である。バ
ックアップ管理テーブル103は各種データセットのバ
ックアップ管理情報を管理する。より具体的には、バッ
クアップ対象のデータセットのメンバのうちの上位プロ
グラムにより更新されたメンバを含むブロックの識別子
を記憶する。ロールバックエリア105はトランザクシ
ョン処理が異常終了した場合のテーブル復旧に使用す
る。より具体的には、データセットのメンバが上位プロ
グラムにより最初に更新されたときに更新前の値を記憶
する。
登録されている各種データセットの管理に用いられる。
管理内容は、データセットを構成するメンバのバイト数
(データセットに対して1つの値が定まり、メンバ間で
共通)、バックアップ対象のデータセット等である。バ
ックアップ管理テーブル103は各種データセットのバ
ックアップ管理情報を管理する。より具体的には、バッ
クアップ対象のデータセットのメンバのうちの上位プロ
グラムにより更新されたメンバを含むブロックの識別子
を記憶する。ロールバックエリア105はトランザクシ
ョン処理が異常終了した場合のテーブル復旧に使用す
る。より具体的には、データセットのメンバが上位プロ
グラムにより最初に更新されたときに更新前の値を記憶
する。
【0019】なお、複数のメンバよりブロックが構成さ
れ、複数のブロックよりデータセットが構成される。ブ
ロック長はバックアップファイル109のレコード長と
等しくなるように定められる。
れ、複数のブロックよりデータセットが構成される。ブ
ロック長はバックアップファイル109のレコード長と
等しくなるように定められる。
【0020】データセットのメンバが更新された場合
に、以下の2種類の処理を行うことによって復旧準備を
行う。1つは、データセットのメンバが更新されたとき
に、そのデータセットがバックアップ対象である場合
に、そのメンバを含むブロックの識別子をバックアップ
管理テーブル103に書き込む処理である。各々のデー
タセットがバックアップの対象であるか否かは、データ
セット管理テーブル101を参照して判断する。もう1
つは、データセットのメンバが最初に更新されたとき
に、そのメンバの更新前の値をロールバックエリア10
5に書き込む処理である。
に、以下の2種類の処理を行うことによって復旧準備を
行う。1つは、データセットのメンバが更新されたとき
に、そのデータセットがバックアップ対象である場合
に、そのメンバを含むブロックの識別子をバックアップ
管理テーブル103に書き込む処理である。各々のデー
タセットがバックアップの対象であるか否かは、データ
セット管理テーブル101を参照して判断する。もう1
つは、データセットのメンバが最初に更新されたとき
に、そのメンバの更新前の値をロールバックエリア10
5に書き込む処理である。
【0021】また、トランザクションが正常終了した場
合には、バックアップ管理テーブル103に格納された
更新されたブロックの情報に基づいてバックアップ対象
として選ばれているデータセット107の更新ブロック
の内容をバックアップファイル109にバックアップす
る。トランザクションが異常終了した場合には、ロール
バックエリア105に格納された内容の全てをデータセ
ット107に戻す。このようにして、システムの利用者
が意識することなく、ワークエリア上に定義されたテー
ブルの復旧を可能にする。
合には、バックアップ管理テーブル103に格納された
更新されたブロックの情報に基づいてバックアップ対象
として選ばれているデータセット107の更新ブロック
の内容をバックアップファイル109にバックアップす
る。トランザクションが異常終了した場合には、ロール
バックエリア105に格納された内容の全てをデータセ
ット107に戻す。このようにして、システムの利用者
が意識することなく、ワークエリア上に定義されたテー
ブルの復旧を可能にする。
【0022】図2を参照すると、本発明の実施形態によ
るワークエリアのデータセット管理方式はデータセット
管理手順201とデータセットル入出力手順202とデ
ータセットバックアップ管理手順203とロールバック
エリア管理手順204から構成されている。これらの手
順はそれぞれ次のように動作する。
るワークエリアのデータセット管理方式はデータセット
管理手順201とデータセットル入出力手順202とデ
ータセットバックアップ管理手順203とロールバック
エリア管理手順204から構成されている。これらの手
順はそれぞれ次のように動作する。
【0023】データセット管理手順201はデータセッ
トの全体(メンバのバイト数、データセットがバックア
ップの対象であるか否か、データセットのバイト数)を
把握するのに使用する。
トの全体(メンバのバイト数、データセットがバックア
ップの対象であるか否か、データセットのバイト数)を
把握するのに使用する。
【0024】データセット入出力手順202はデータセ
ット管理テーブル101に基づいてテーブルの入出力を
行う。
ット管理テーブル101に基づいてテーブルの入出力を
行う。
【0025】バックアップ管理手順203は更新された
メンバのバックアップ情報を管理する。より具体的に
は、あるデータセットのあるメンバが更新されたとき
に、そのデータセットがバックアップの対象であるなら
ば、そのメンバを含むブロックの識別子をバックアップ
管理テーブル103に書き込む。ブロックサイズはバッ
クアップファイル109のレコードサイズと等しく定め
る。
メンバのバックアップ情報を管理する。より具体的に
は、あるデータセットのあるメンバが更新されたとき
に、そのデータセットがバックアップの対象であるなら
ば、そのメンバを含むブロックの識別子をバックアップ
管理テーブル103に書き込む。ブロックサイズはバッ
クアップファイル109のレコードサイズと等しく定め
る。
【0026】ロールバックエリア管理手順204は更新
されたメンバをロールバックエリア105へ退避する。
より具体的には、あるデータセットのあるメンバが更新
されたときに、その更新がそのメンバの最初の更新であ
る場合には、更新前のメンバの値をロールバックエリア
105に書き込む。
されたメンバをロールバックエリア105へ退避する。
より具体的には、あるデータセットのあるメンバが更新
されたときに、その更新がそのメンバの最初の更新であ
る場合には、更新前のメンバの値をロールバックエリア
105に書き込む。
【0027】次に図3、図4、図5を参照して本実施形
態の全体の動作について詳細に説明する。
態の全体の動作について詳細に説明する。
【0028】まず、図3を参照して、トランザクション
処理中の動作を説明する。業務処理(上位層)からある
データセット107について更新要求が行われた場合
(ステップS301)、更新されたメンバが初めて更新
されたメンバであるか否かを更新フラグを参照すること
により判定し(ステップS302、S303)、そうで
ある場合は、データセット管理テーブル101から当該
データセット107のロールバックエリア105を検索
し、当該メンバの更新前の内容をロールバックエリア1
05に退避する(ステップS304)。待避したなら
ば、更新フラグをセットする。なお、全ての更新フラグ
はトランザクション開始時にリセットされている。
処理中の動作を説明する。業務処理(上位層)からある
データセット107について更新要求が行われた場合
(ステップS301)、更新されたメンバが初めて更新
されたメンバであるか否かを更新フラグを参照すること
により判定し(ステップS302、S303)、そうで
ある場合は、データセット管理テーブル101から当該
データセット107のロールバックエリア105を検索
し、当該メンバの更新前の内容をロールバックエリア1
05に退避する(ステップS304)。待避したなら
ば、更新フラグをセットする。なお、全ての更新フラグ
はトランザクション開始時にリセットされている。
【0029】次に、更新されたメンバを有するデータセ
ット107がバックアップ対象のデータセットであるか
否かを判定し(ステップ305、S306)、バックア
ップ対象のデータセットである場合は当該データセット
のブロック化係数に基づいてメンバをブロック化(幾つ
かのメンバをまとめること)して、テーブルバックアッ
プ管理テーブル103にそのブロックの識別子を格納す
る(ステップS307)。
ット107がバックアップ対象のデータセットであるか
否かを判定し(ステップ305、S306)、バックア
ップ対象のデータセットである場合は当該データセット
のブロック化係数に基づいてメンバをブロック化(幾つ
かのメンバをまとめること)して、テーブルバックアッ
プ管理テーブル103にそのブロックの識別子を格納す
る(ステップS307)。
【0030】次にトランザクション処理の終了時に図4
に示すような以下の処理を行う。まず、トランザクショ
ン処理が正常終了したか異常終了したかを判断する(ス
テップS401、S402)。次に正常終了の場合は、
バックアップ管理テーブル103に登録されているバッ
クアップ情報(バックアップ対象となるブロックの識別
子の集合)に基づいてバックアップすべきブロックの内
容をバックアップファイル109に出力する(ステップ
S404)。異常終了した場合はロールバックエリア1
05に退避されている各メンバの内容をデータセット1
07に復旧する(ステップS403)。
に示すような以下の処理を行う。まず、トランザクショ
ン処理が正常終了したか異常終了したかを判断する(ス
テップS401、S402)。次に正常終了の場合は、
バックアップ管理テーブル103に登録されているバッ
クアップ情報(バックアップ対象となるブロックの識別
子の集合)に基づいてバックアップすべきブロックの内
容をバックアップファイル109に出力する(ステップ
S404)。異常終了した場合はロールバックエリア1
05に退避されている各メンバの内容をデータセット1
07に復旧する(ステップS403)。
【0031】トランザクションを一旦終了して、トラン
ザクションの再起動をかけた場合の動作を図5に示す。
再起動後は、データセット管理テーブル101から復旧
対象のデータセット107を検索し、復旧対象のデータ
セットの内容の全てをバックアップファイル109から
ワークエリアにロードする(ステップS501)。ま
た、前述のごとく全てのメンバについての更新フラグを
リセットする。
ザクションの再起動をかけた場合の動作を図5に示す。
再起動後は、データセット管理テーブル101から復旧
対象のデータセット107を検索し、復旧対象のデータ
セットの内容の全てをバックアップファイル109から
ワークエリアにロードする(ステップS501)。ま
た、前述のごとく全てのメンバについての更新フラグを
リセットする。
【0032】[実施形態2]次に、実施形態2について
説明する。
説明する。
【0033】複数のデータセットを用意し、データセッ
トに格納されたメンバの値を用いて複雑な計算を行う場
合、即ち、例えば、ロケットの質量、燃料、一定時間毎
の風向き、空気抵抗等をメンバとして有するデータセッ
トを用いてロケットの打ち上げ時の軌道をシミュレート
する場合に、シミュレーション結果が良かったデータセ
ットの各メンバの値を規定値として、種々のメンバの値
を規定値から変化させて追加シミュレートを行いたいと
いった時は、一時的に規定値を納めたデータセットを用
意して、再利用しなければならない。従来では、2つの
データセットを利用することにより、その再利用を可能
としていた。本実施形態では、そのような追加シミュレ
ーションの際にメンバの規定値が変更されたときに、規
定値をロールバックエリア105に待避し、新たに別の
追加シミュレーションを開始する際にロールバックエリ
ア105に待避した規定値をワークエリアに復旧するも
のである。
トに格納されたメンバの値を用いて複雑な計算を行う場
合、即ち、例えば、ロケットの質量、燃料、一定時間毎
の風向き、空気抵抗等をメンバとして有するデータセッ
トを用いてロケットの打ち上げ時の軌道をシミュレート
する場合に、シミュレーション結果が良かったデータセ
ットの各メンバの値を規定値として、種々のメンバの値
を規定値から変化させて追加シミュレートを行いたいと
いった時は、一時的に規定値を納めたデータセットを用
意して、再利用しなければならない。従来では、2つの
データセットを利用することにより、その再利用を可能
としていた。本実施形態では、そのような追加シミュレ
ーションの際にメンバの規定値が変更されたときに、規
定値をロールバックエリア105に待避し、新たに別の
追加シミュレーションを開始する際にロールバックエリ
ア105に待避した規定値をワークエリアに復旧するも
のである。
【0034】
【発明の効果】以上説明したように、本発明によれば以
下の効果が奏される。
下の効果が奏される。
【0035】更新されたメンバだけロールバックエリア
に記憶させるので、ロールバックエリアを最小限にする
ことができる。
に記憶させるので、ロールバックエリアを最小限にする
ことができる。
【0036】また、バックアップ対象のデータセットの
更新されたメンバだけをバックアップファイルに書き込
むので、バックアップ時間を最小限にすることができ
る。
更新されたメンバだけをバックアップファイルに書き込
むので、バックアップ時間を最小限にすることができ
る。
【0037】更に、バックアップファイルの更新頻度を
少なくすることが可能となる。その理由はデータセット
のメンバをブロック化することによりレコード数が減
り、また処理の終了時に一括してバックアップファイル
にバックアップの対象のブロックの内容を出力するため
である。
少なくすることが可能となる。その理由はデータセット
のメンバをブロック化することによりレコード数が減
り、また処理の終了時に一括してバックアップファイル
にバックアップの対象のブロックの内容を出力するため
である。
【0038】更に、ワークエリアのデータセット管理方
式により自動的にデータセットのバックアップおよび復
旧を行うので、上位層での利用者の作業が簡単になる。
式により自動的にデータセットのバックアップおよび復
旧を行うので、上位層での利用者の作業が簡単になる。
【0039】更に、上位層のプログラム開発作業が楽に
なる。その理由はデータセット管理部分を共通化するこ
とでその他の上位層の業務処理はバックアップや障害時
の対策等を考える必要がないためである。
なる。その理由はデータセット管理部分を共通化するこ
とでその他の上位層の業務処理はバックアップや障害時
の対策等を考える必要がないためである。
【図1】本発明の実施形態によるワークエリアのデータ
セット管理方式の構成を示すブロック図である。
セット管理方式の構成を示すブロック図である。
【図2】本発明の実施形態による機能ブロック図であ
る。
る。
【図3】本発明の実施形態によるワークエリアのデータ
セット管理方式のトランザクション処理中の動作を説明
するためのフローチャートである。
セット管理方式のトランザクション処理中の動作を説明
するためのフローチャートである。
【図4】本発明の実施形態によるワークエリアのデータ
セット管理方式のトランザクション終了時の動作を説明
するためのフローチャートである。
セット管理方式のトランザクション終了時の動作を説明
するためのフローチャートである。
【図5】本発明の実施形態によるワークエリアのデータ
セット管理方式のトランザクション開始時の動作を説明
するためのフローチャートである。
セット管理方式のトランザクション開始時の動作を説明
するためのフローチャートである。
101 データセット管理テーブル 102 更新メンバ情報管理 103 バックアップ管理テーブル 104 アドレス・サイズ管理 105 ロールバックエリア 106 リンク 107 データセット 108 バックアップ 109 バックアップファイル
Claims (7)
- 【請求項1】 各々が複数のメンバより構成される複数
のデータセットを一時記憶するためのワークエリアと、 少なくとも1つのデータセットの少なくとも1つのメン
バの初期値を記憶するためのロールバックエリアと、 前記複数のデータセットの各々がバックアップの対象で
あるか否かを管理するデータセット管理テーブルと、 前記複数のデータセットのうちのバックアップの対象と
するデータセットの各メンバの更新の有無を管理するバ
ックアップ管理テーブルと、 少なくとも1つのデータセットの少なくとも1つのメン
バをバックアップするためのバックアップファイルと、 プログラムの実行により何れかのデータセットの何れか
のメンバが変更されたときに、そのメンバの変更がその
メンバについての最初の変更であるならば、変更前のメ
ンバの値を前記ロールバックエリアに待避させる待避手
段と、 前記プログラムの実行により何れかデータセットの何れ
かのメンバが更新されたときに、そのデータセットがバ
ックアップの対象であるか否かを前記データセット管理
テーブルを参照して判定して、そうであればそのデータ
セットのそのメンバについて更新があったことを前記バ
ックアップ管理テーブルに書き込むバックアップ管理テ
ーブル更新手段と、 前記プログラムの終了時に正常終了であるか異常終了で
あるかを判定する終了状態判定手段と、 前記プログラムが異常終了したならば、前記ロールバッ
クエリアに記憶されているメンバを前記ワークエリアの
データセットに書き戻す復旧手段と、 前記プログラムが正常終了したならば、前記バックアッ
プ管理テーブルに更新があったことが記憶されているメ
ンバの値を前記ワークエリアから読み込んで前記バック
アップファイルに書き込むバックアップ手段と、 を備えることを特徴とするワークエリアのデータセット
管理方式。 - 【請求項2】 請求項1に記載のワークエリアのデータ
セット管理方式において、前記バックアップ管理テーブ
ルは前記メンバの複数をブロック化して管理し、前記バ
ックアップ管理テーブル更新手段は、メンバについて更
新があったことを前記バックアップ管理テーブルに書き
込む際に、そのメンバが属するブロックの単位で書き込
みを行い、前記バックアップ手段は、メンバを前記バッ
クアップファイルに書き込む際に、ブロック単位で書き
込むことを特徴とするワークエリアのデータセット管理
方式。 - 【請求項3】 請求項1又は2に記載のワークエリアの
データセット管理方式において、前記プログラムの開始
時に前記バックアップファイルに記憶されているメンバ
を前記ワークエリアのデータセットに書き戻す初期化手
段を更に備えることを特徴とするワークエリアのデータ
セット管理方式。 - 【請求項4】 複数のメンバより構成されるデータセッ
トを一時記憶するためのワークエリアと、 前記データセットの少なくとも1つのメンバの初期値を
記憶するためのロールバックエリアと、 前記データセットの各メンバの更新の有無を管理するバ
ックアップ管理テーブルと、 前記データセットの少なくとも1つのメンバをバックア
ップするためのバックアップファイルと、 プログラムの実行により前記データセットの何れかのメ
ンバが変更されたときに、そのメンバの変更がそのメン
バについての最初の変更であるならば、変更前のメンバ
の値を前記ロールバックエリアに待避させる待避手段
と、 前記プログラムの実行により前記データセットの何れか
のメンバが更新されたときに、そのメンバについて更新
があったことを前記バックアップ管理テーブルに書き込
むバックアップ管理テーブル更新手段と、 前記プログラムの終了時に正常終了であるか異常終了で
あるかを判定する終了状態判定手段と、 前記プログラムが異常終了したならば、前記ロールバッ
クエリアに記憶されているメンバを前記ワークエリアの
データセットに書き戻す復旧手段と、 前記プログラムが正常終了したならば、前記バックアッ
プ管理テーブルに更新があったことが記憶されているメ
ンバの値を前記ワークエリアから読み込んで前記バック
アップファイルに書き込むバックアップ手段と、 を備えることを特徴とするワークエリアのデータセット
管理方式。 - 【請求項5】 請求項4に記載のワークエリアのデータ
セット管理方式において、前記バックアップ管理テーブ
ルは前記メンバの複数をブロック化して管理し、前記バ
ックアップ管理テーブル更新手段は、メンバについて更
新があったことを前記バックアップ管理テーブルに書き
込む際に、そのメンバが属するブロックの単位で書き込
みを行い、前記バックアップ手段は、メンバを前記バッ
クアップファイルに書き込む際に、ブロック単位で書き
込むことを特徴とするワークエリアのデータセット管理
方式。 - 【請求項6】 請求項4又は5に記載のワークエリアの
データセット管理方式において、前記プログラムの開始
時に前記バックアップファイルに記憶されているメンバ
を前記ワークエリアのデータセットに書き戻す初期化手
段を更に備えることを特徴とするワークエリアのデータ
セット管理方式。 - 【請求項7】 複数のメンバより構成されるデータセッ
トを一時記憶するためのワークエリアと、 前記データセットの少なくとも1つのメンバの初期値を
記憶するためのロールバックエリアと、 プログラムの実行により前記データセットの何れかのメ
ンバが変更されたときに、そのメンバの変更がそのメン
バについての最初の変更であるならば、変更前のメンバ
の値を前記ロールバックエリアに待避させる待避手段
と、 前記プログラムが要求するときに、前記ロールバックエ
リアに記憶されているメンバを前記ワークエリアのデー
タセットに書き戻す復旧手段と、 を備えることを特徴とするワークエリアのデータセット
管理方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11145311A JP2000339183A (ja) | 1999-05-25 | 1999-05-25 | ワークエリアのデータセット管理方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11145311A JP2000339183A (ja) | 1999-05-25 | 1999-05-25 | ワークエリアのデータセット管理方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2000339183A true JP2000339183A (ja) | 2000-12-08 |
Family
ID=15382230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11145311A Pending JP2000339183A (ja) | 1999-05-25 | 1999-05-25 | ワークエリアのデータセット管理方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2000339183A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007188497A (ja) * | 2006-01-10 | 2007-07-26 | Samsung Electronics Co Ltd | トランザクション処理のためのログ情報管理システムおよび方法 |
CN111273859A (zh) * | 2020-01-14 | 2020-06-12 | 北京百度网讯科技有限公司 | 分发模式下复制组成员的变更方法、装置、设备和介质 |
-
1999
- 1999-05-25 JP JP11145311A patent/JP2000339183A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007188497A (ja) * | 2006-01-10 | 2007-07-26 | Samsung Electronics Co Ltd | トランザクション処理のためのログ情報管理システムおよび方法 |
CN111273859A (zh) * | 2020-01-14 | 2020-06-12 | 北京百度网讯科技有限公司 | 分发模式下复制组成员的变更方法、装置、设备和介质 |
CN111273859B (zh) * | 2020-01-14 | 2023-09-15 | 北京百度网讯科技有限公司 | 分发模式下复制组成员的变更方法、装置、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5724581A (en) | Data base management system for recovering from an abnormal condition | |
US6247024B1 (en) | Method and system for performing deferred file removal in a file system | |
JP4422016B2 (ja) | 仮想データコピーを作成するための方法および装置 | |
JPH09101912A (ja) | 差分バックアップ方式 | |
JPH03278126A (ja) | 計算機システム立上げ方式 | |
US7290100B2 (en) | Computer system for managing data transfer between storage sub-systems | |
JP3052908B2 (ja) | トランザクションプログラム並列実行方法およびトランザクションプログラム並列実行方式 | |
JPH08504528A (ja) | データベースにおけるメモリ空間の最適化方法 | |
JP3042600B2 (ja) | 分散ファイルの同期方式 | |
JP2000339183A (ja) | ワークエリアのデータセット管理方式 | |
JPH0816881B2 (ja) | データベース更新方法 | |
JPH03265951A (ja) | 故障回復型計算機 | |
JP2666426B2 (ja) | 二重化補助記憶装置 | |
CN113868679B (zh) | 一种集群的加密方法及装置 | |
JP3056038B2 (ja) | ボリューム管理テーブル障害復旧方式 | |
JP2001297005A (ja) | クライアントサーバシステム | |
JPH08328753A (ja) | ミラードディスク管理方式 | |
JPH04105159A (ja) | 業務代行方式 | |
JPS63262737A (ja) | デ−タベ−ス更新記録処理方法 | |
JPH04141751A (ja) | 大容量記憶媒体障害復旧方式 | |
JP2000047830A (ja) | ミラーディスクアクセス装置および方法 | |
CN114647657A (zh) | 一种车辆的大量数据无缝更新方法 | |
JPH0823840B2 (ja) | デ−タベ−ス更新方法および装置 | |
JPH11238010A (ja) | データベースの管理装置とその方法及びこの方法を記録した記録媒体 | |
JP2818538B2 (ja) | ジャーナルファイルの分割管理方式およびジャーナルファイルの分割管理方法 |