JPH06149485A - データ完結性保証処理方法 - Google Patents
データ完結性保証処理方法Info
- Publication number
- JPH06149485A JPH06149485A JP4296766A JP29676692A JPH06149485A JP H06149485 A JPH06149485 A JP H06149485A JP 4296766 A JP4296766 A JP 4296766A JP 29676692 A JP29676692 A JP 29676692A JP H06149485 A JPH06149485 A JP H06149485A
- Authority
- JP
- Japan
- Prior art keywords
- data
- area
- control
- storage device
- latest
- 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.)
- Withdrawn
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【目的】半導体外部記憶装置などの不揮発性記憶装置10
へ転送中のデータの完結性を保証するデータ完結性保証
処理方法に関し,CPUオーバヘッドの小さい効率よい
完結性の保証方法を提供することを目的とする。 【構成】データ群の完結性を保証するための制御データ
域12A,12B を,不揮発性記憶装置10上に複数個用意し,
その制御データ域のうち,データ群の書き込みが完了し
た最新のデータを保持する制御データ域をポイントする
最新データ制御域11を,不揮発性記憶装置10上に設け
る。そして,制御データ域を更新する場合に,最新デー
タ制御域11からポイントされないほうの制御データ域に
更新するデータ群を書き込み,そのデータ群の書き込み
が完了した時点で,最新データ制御域11におけるポイン
タを,書き込みが完了した制御データ域をポイントする
ように,データ転送の完結性が保証される1命令で書き
込む。
へ転送中のデータの完結性を保証するデータ完結性保証
処理方法に関し,CPUオーバヘッドの小さい効率よい
完結性の保証方法を提供することを目的とする。 【構成】データ群の完結性を保証するための制御データ
域12A,12B を,不揮発性記憶装置10上に複数個用意し,
その制御データ域のうち,データ群の書き込みが完了し
た最新のデータを保持する制御データ域をポイントする
最新データ制御域11を,不揮発性記憶装置10上に設け
る。そして,制御データ域を更新する場合に,最新デー
タ制御域11からポイントされないほうの制御データ域に
更新するデータ群を書き込み,そのデータ群の書き込み
が完了した時点で,最新データ制御域11におけるポイン
タを,書き込みが完了した制御データ域をポイントする
ように,データ転送の完結性が保証される1命令で書き
込む。
Description
【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は,計算機システムにおい
て,半導体外部記憶装置などの不揮発性記憶装置へ転送
中のデータが,障害のため不定データとなることを回避
し,データの完結性を保証するデータ完結性保証処理方
法に関する。
て,半導体外部記憶装置などの不揮発性記憶装置へ転送
中のデータが,障害のため不定データとなることを回避
し,データの完結性を保証するデータ完結性保証処理方
法に関する。
【0002】複数の計算機を通信路で結合した形態のシ
ステムを,複合システムと呼ぶ。複合システムを構成す
る計算機を,ここではクラスタと呼ぶ。このような複合
システムにおいて,大量のトランザクションを処理する
ためには,不揮発性の半導体記憶装置を外部記憶媒体と
して使用することが有効である。
ステムを,複合システムと呼ぶ。複合システムを構成す
る計算機を,ここではクラスタと呼ぶ。このような複合
システムにおいて,大量のトランザクションを処理する
ためには,不揮発性の半導体記憶装置を外部記憶媒体と
して使用することが有効である。
【0003】半導体を利用した高速入出力が可能な外部
記憶媒体を,以後「システム記憶(SSU)」と称す
る。特に,システム記憶を利用してデータベースのシス
テム間共用制御を行う場合,ログバッファをシステム記
憶に獲得して,このバッファをシステム間で共用するロ
ギング方式がシステムの効率の上で有効である。
記憶媒体を,以後「システム記憶(SSU)」と称す
る。特に,システム記憶を利用してデータベースのシス
テム間共用制御を行う場合,ログバッファをシステム記
憶に獲得して,このバッファをシステム間で共用するロ
ギング方式がシステムの効率の上で有効である。
【0004】一方,システム記憶に転送されるデータ
は,本体系のハードウェア障害(例えば,CPU障害)
によって,その完結性が保証されない場合がある。その
ような転送データの完結性を効率よく保証する技術が必
要とされる。
は,本体系のハードウェア障害(例えば,CPU障害)
によって,その完結性が保証されない場合がある。その
ような転送データの完結性を効率よく保証する技術が必
要とされる。
【0005】
【従来の技術】図8は,従来技術によるデータ転送方式
を説明するための図である。記憶装置に転送中のデータ
が,CPU障害のようなハードウェア障害によって,転
送前の値でもなく,転送後の値でもない状態になること
がある。このような完結性が保証されないデータを不定
データという。
を説明するための図である。記憶装置に転送中のデータ
が,CPU障害のようなハードウェア障害によって,転
送前の値でもなく,転送後の値でもない状態になること
がある。このような完結性が保証されないデータを不定
データという。
【0006】従来,このような不定データを検出するた
めに,図8に示すように,転送するデータ部の前後に,
チェックバイトを配置することが行われていた。データ
部の前後のチェックバイトに,例えばシーケンス番号や
タイムスタンプなどをもとにした同じ値を設定してデー
タ転送を行う。次に,そのデータを読み込んだときに,
前後のチェックバイトの値が異なっていれば,障害のた
め不定データになったと判断する。
めに,図8に示すように,転送するデータ部の前後に,
チェックバイトを配置することが行われていた。データ
部の前後のチェックバイトに,例えばシーケンス番号や
タイムスタンプなどをもとにした同じ値を設定してデー
タ転送を行う。次に,そのデータを読み込んだときに,
前後のチェックバイトの値が異なっていれば,障害のた
め不定データになったと判断する。
【0007】図8に示すようなチェックバイトによるデ
ータ転送方式では,データ転送が完結したか否か,すな
わちデータが不定データであるか否かを判定することは
できるが,転送データ自体の完結性を保証することはで
きなかった。
ータ転送方式では,データ転送が完結したか否か,すな
わちデータが不定データであるか否かを判定することは
できるが,転送データ自体の完結性を保証することはで
きなかった。
【0008】例えば,図9に示すように,クラスタ#1
が,不揮発性記憶装置10にレコードaを書き込んでい
たとする。このレコードaのデータを転送している途中
で,クラスタ#1が,障害によりクラッシュしたとする
と,不揮発性記憶装置10に書き込まれたデータは,レ
コードa′のように,レコードaの内容とも元の内容と
も異なる値を持つデータになることがある。
が,不揮発性記憶装置10にレコードaを書き込んでい
たとする。このレコードaのデータを転送している途中
で,クラスタ#1が,障害によりクラッシュしたとする
と,不揮発性記憶装置10に書き込まれたデータは,レ
コードa′のように,レコードaの内容とも元の内容と
も異なる値を持つデータになることがある。
【0009】このレコードa′をクラスタ#2が読み込
んだとすると,図8に示すようなチェックバイトの検査
により,レコードa′が不定データであることは検出で
きるが,正しいレコードaの内容または元の完結した内
容を得ることはできない。
んだとすると,図8に示すようなチェックバイトの検査
により,レコードa′が不定データであることは検出で
きるが,正しいレコードaの内容または元の完結した内
容を得ることはできない。
【0010】そのため,従来,不揮発性記憶装置10に
は,各クラスタ等が頻繁に使用する制御データなどを配
置することができないという問題があった。すなわち,
システム記憶上に配置した制御データ(例えば,クラス
タ間排他情報など)が不定となった場合,その不定デー
タを参照した後の複合システムの動作は保証されないた
め,システム記憶上に制御データを配置することができ
なかった。
は,各クラスタ等が頻繁に使用する制御データなどを配
置することができないという問題があった。すなわち,
システム記憶上に配置した制御データ(例えば,クラス
タ間排他情報など)が不定となった場合,その不定デー
タを参照した後の複合システムの動作は保証されないた
め,システム記憶上に制御データを配置することができ
なかった。
【0011】この問題を解決するため,特開平3−62
244号公報に示されるような半導体外部記憶装置にお
けるデータ保証制御方式の技術が提案されている。この
方式では,半導体外部記憶装置への転送データを,外部
不揮発記憶媒体上に退避するとともに,その転送データ
に関するリカバリ情報を外部不揮発記憶媒体上に設定す
る書き込み処理手段と,半導体外部記憶装置に対する書
き込みまたは読み込みのアクセス要求の処理において,
外部不揮発記憶媒体に設定されたリカバリ情報を参照
し,先のアクセスによる転送データが障害により不定デ
ータになっていることを検出した場合に,外部不揮発記
憶媒体に退避した転送データに基づいて,不定データの
復旧を行うリカバリ処理手段とを備えることにより,不
定データを復旧することができるようにしている。
244号公報に示されるような半導体外部記憶装置にお
けるデータ保証制御方式の技術が提案されている。この
方式では,半導体外部記憶装置への転送データを,外部
不揮発記憶媒体上に退避するとともに,その転送データ
に関するリカバリ情報を外部不揮発記憶媒体上に設定す
る書き込み処理手段と,半導体外部記憶装置に対する書
き込みまたは読み込みのアクセス要求の処理において,
外部不揮発記憶媒体に設定されたリカバリ情報を参照
し,先のアクセスによる転送データが障害により不定デ
ータになっていることを検出した場合に,外部不揮発記
憶媒体に退避した転送データに基づいて,不定データの
復旧を行うリカバリ処理手段とを備えることにより,不
定データを復旧することができるようにしている。
【0012】
【発明が解決しようとする課題】上記従来提案されてい
る半導体外部記憶装置におけるデータ保証制御方式によ
れば,転送データの完結性を保証することができる。し
かし,システム記憶に対するアクセス回数が増加するた
め,トランザクション処理におけるログデータのバッフ
ァなどをシステム記憶上に配置して,そのデータ保証を
行った場合,システム記憶のアクセスによるCPUオー
バヘッドが増加するという問題がある。
る半導体外部記憶装置におけるデータ保証制御方式によ
れば,転送データの完結性を保証することができる。し
かし,システム記憶に対するアクセス回数が増加するた
め,トランザクション処理におけるログデータのバッフ
ァなどをシステム記憶上に配置して,そのデータ保証を
行った場合,システム記憶のアクセスによるCPUオー
バヘッドが増加するという問題がある。
【0013】ところで,完結性を保証しようとするデー
タが,例えば8バイトというような短いものであれば,
中央処理装置が持つシステム記憶へのアクセス命令の中
に,データ転送の完結性を保証する命令(例えば,CD
STS命令)があるので,その命令を用いることによ
り,障害時にもそのデータ単位については不定データに
ならないようにすることができる。しかし,ログデータ
などは一般に長くなるのが普通であるので,1命令によ
って完結したデータの転送を行うことはできない。
タが,例えば8バイトというような短いものであれば,
中央処理装置が持つシステム記憶へのアクセス命令の中
に,データ転送の完結性を保証する命令(例えば,CD
STS命令)があるので,その命令を用いることによ
り,障害時にもそのデータ単位については不定データに
ならないようにすることができる。しかし,ログデータ
などは一般に長くなるのが普通であるので,1命令によ
って完結したデータの転送を行うことはできない。
【0014】同じように,ログデータの完結性を検査す
るための制御データについても,一般に8バイト以上の
長さになるので,データ転送の完結性が保証される1命
令によって書き込みを完結させることはできない。した
がって,従来技術によるデータの完結性を保証する方式
では,データの退避等が必要になり,CPUのオーバヘ
ッドが増加する原因となっていた。
るための制御データについても,一般に8バイト以上の
長さになるので,データ転送の完結性が保証される1命
令によって書き込みを完結させることはできない。した
がって,従来技術によるデータの完結性を保証する方式
では,データの退避等が必要になり,CPUのオーバヘ
ッドが増加する原因となっていた。
【0015】本発明は上記問題点の解決を図り,制御デ
ータおよびログデータなどの比較的長い転送データの完
結性を効率よく保証できるようにし,CPUのオーバヘ
ッドを削減することを目的としている。
ータおよびログデータなどの比較的長い転送データの完
結性を効率よく保証できるようにし,CPUのオーバヘ
ッドを削減することを目的としている。
【0016】
【課題を解決するための手段】図1は,本発明の原理説
明図である。図1において,10は半導体外部記憶装置
等によって構成される不揮発性記憶装置,11は最新デ
ータ制御域,12Aは第1制御データ域,12Bは第2
制御データ域,13はログバッファなどのデータ格納
域,14は中央処理装置(CPU)およびメモリなどか
らなる計算機本体を表す。
明図である。図1において,10は半導体外部記憶装置
等によって構成される不揮発性記憶装置,11は最新デ
ータ制御域,12Aは第1制御データ域,12Bは第2
制御データ域,13はログバッファなどのデータ格納
域,14は中央処理装置(CPU)およびメモリなどか
らなる計算機本体を表す。
【0017】計算機本体14におけるCPUは,例えば
8バイトというような所定のデータ単位について,不揮
発性記憶装置10への転送データの完結性を保証する命
令の実行機構を有する。
8バイトというような所定のデータ単位について,不揮
発性記憶装置10への転送データの完結性を保証する命
令の実行機構を有する。
【0018】本発明では,データ格納域13への転送デ
ータの完結性を保証するため,その検査に必要な制御デ
ータ(例えば転送アドレスや未転送データ長など)を制
御データ域に設定する。さらに,8バイトより長い制御
データ域への転送データの完結性を保証するため,本発
明では次のようにする。
ータの完結性を保証するため,その検査に必要な制御デ
ータ(例えば転送アドレスや未転送データ長など)を制
御データ域に設定する。さらに,8バイトより長い制御
データ域への転送データの完結性を保証するため,本発
明では次のようにする。
【0019】まず,不揮発性記憶装置10上に,制御デ
ータ域として,同じ構造を持つ第1制御データ域12A
と第2制御データ域12Bの2つを用意する。また,こ
れらの制御データ域のうち,データ転送の完結した最新
のデータを保持するほうをポイントする最新データ制御
域11を不揮発性記憶装置10上に設ける。
ータ域として,同じ構造を持つ第1制御データ域12A
と第2制御データ域12Bの2つを用意する。また,こ
れらの制御データ域のうち,データ転送の完結した最新
のデータを保持するほうをポイントする最新データ制御
域11を不揮発性記憶装置10上に設ける。
【0020】制御データ域12Aまたは12Bを更新す
る場合に,最新データ制御域11からポイントされない
ほうの制御データ域に更新するデータ群を書き込み,そ
のデータ群の書き込みが完了した時点で,最新データ制
御域11におけるポインタを,書き込みが完了した制御
データ域のほうをポイントするように,データ転送の完
結性が保証される1命令で書き込む。そして,最新デー
タ制御域11からポイントされる制御データ域12Aま
たは12Bを,有効なデータを保持する制御データ域と
して扱う。
る場合に,最新データ制御域11からポイントされない
ほうの制御データ域に更新するデータ群を書き込み,そ
のデータ群の書き込みが完了した時点で,最新データ制
御域11におけるポインタを,書き込みが完了した制御
データ域のほうをポイントするように,データ転送の完
結性が保証される1命令で書き込む。そして,最新デー
タ制御域11からポイントされる制御データ域12Aま
たは12Bを,有効なデータを保持する制御データ域と
して扱う。
【0021】データ格納域13へのデータ転送の完結性
の保証,すなわちログデータなどの書き込み処理におけ
るデータ完結性の保証は,次のように行う。 (1) データ格納域13へのデータ書き込み要求を受け付
ける。
の保証,すなわちログデータなどの書き込み処理におけ
るデータ完結性の保証は,次のように行う。 (1) データ格納域13へのデータ書き込み要求を受け付
ける。
【0022】(2) 最新データ制御域11を読み込み,第
1制御データ域12Aと第2制御データ域12Bのどち
らをポイントしているかにより,現在,信頼すべきデー
タが格納されている制御データ域を判断する。
1制御データ域12Aと第2制御データ域12Bのどち
らをポイントしているかにより,現在,信頼すべきデー
タが格納されている制御データ域を判断する。
【0023】(3) 最新データ制御域11がポイントして
いない空きの制御データ域側に,データ書き込み先の転
送アドレスと,そのデータ長(未転送データ長)を,書
き込む。
いない空きの制御データ域側に,データ書き込み先の転
送アドレスと,そのデータ長(未転送データ長)を,書
き込む。
【0024】(4) 要求されたデータを,データ格納域1
3に書き込む。 (5) 処理(3) で設定した未転送データ長をゼロクリア
し,初期化する。 (6) 最新データ制御域11のポインタを,今まで空きで
あった制御データ域側をポイントするように切り替え
る。
3に書き込む。 (5) 処理(3) で設定した未転送データ長をゼロクリア
し,初期化する。 (6) 最新データ制御域11のポインタを,今まで空きで
あった制御データ域側をポイントするように切り替え
る。
【0025】データ読み込み処理におけるデータ完結性
保証処理は,次のように行うことができる。 (1) データ格納域13からのデータ読み込み要求を受け
付ける。
保証処理は,次のように行うことができる。 (1) データ格納域13からのデータ読み込み要求を受け
付ける。
【0026】(2) 最初に,最新データ制御域11を計算
機本体14のメモリに読み込む。 (3) 制御データ域12Aおよび制御データ域12Bを読
み,未転送データ長が初期化されているかどうかを調べ
る。
機本体14のメモリに読み込む。 (3) 制御データ域12Aおよび制御データ域12Bを読
み,未転送データ長が初期化されているかどうかを調べ
る。
【0027】(4) 未転送データ長が初期化されている場
合,前のデータ転送は正常に行われているので,指定さ
れたデータの読み込み処理を実行し,要求元へ返却す
る。 (5) 未転送データ長が初期化されていない場合,すなわ
ち0でない場合,データ転送中に障害が起きたことが予
想されるので,仕掛かり中のデータを再度データ格納域
13に書き込み,以前のデータ転送を完結させる。その
後,指定されたデータの読み込み処理を実行する。
合,前のデータ転送は正常に行われているので,指定さ
れたデータの読み込み処理を実行し,要求元へ返却す
る。 (5) 未転送データ長が初期化されていない場合,すなわ
ち0でない場合,データ転送中に障害が起きたことが予
想されるので,仕掛かり中のデータを再度データ格納域
13に書き込み,以前のデータ転送を完結させる。その
後,指定されたデータの読み込み処理を実行する。
【0028】
【作用】本発明では,不揮発性記憶装置10のデータ格
納域13へ転送されたデータの完結性を検査できる情報
を制御データとして持つ。この制御データ自身の完結性
を保証するため,同じ構造を持つ制御データ域12A,
12Bを2つ用意し,最新データ制御域11によって交
互に切り替えて使用する。最新データ制御域11におけ
るポインタの切り替えは,データ完結性が保証される書
き込み命令,例えば8バイト長の特殊書き込み命令(C
DSTS命令など)を使用する。
納域13へ転送されたデータの完結性を検査できる情報
を制御データとして持つ。この制御データ自身の完結性
を保証するため,同じ構造を持つ制御データ域12A,
12Bを2つ用意し,最新データ制御域11によって交
互に切り替えて使用する。最新データ制御域11におけ
るポインタの切り替えは,データ完結性が保証される書
き込み命令,例えば8バイト長の特殊書き込み命令(C
DSTS命令など)を使用する。
【0029】これによって,制御データ域12A,12
Bの制御データが,例えば複数の命令またはデータ完結
性が保証されない命令によって更新される場合にも,そ
れが,最新データ制御域11からの完結性が保証された
ポインタによって有効化されることになるので,制御デ
ータ域12A,12Bのいずれかの制御データ全体のデ
ータ完結性につながることになる。
Bの制御データが,例えば複数の命令またはデータ完結
性が保証されない命令によって更新される場合にも,そ
れが,最新データ制御域11からの完結性が保証された
ポインタによって有効化されることになるので,制御デ
ータ域12A,12Bのいずれかの制御データ全体のデ
ータ完結性につながることになる。
【0030】さらに,データ格納域13への転送データ
の完結性は,制御データ域12A,12Bの制御データ
によって検査可能であり,もし完結性が保証されない場
合には,例えばトランザクション処理におけるバックア
ウトログファイル(BOF)などからのリカバリによっ
て,転送処理途中のデータの復旧を行い,転送したデー
タの完結性を保証することができる。
の完結性は,制御データ域12A,12Bの制御データ
によって検査可能であり,もし完結性が保証されない場
合には,例えばトランザクション処理におけるバックア
ウトログファイル(BOF)などからのリカバリによっ
て,転送処理途中のデータの復旧を行い,転送したデー
タの完結性を保証することができる。
【0031】
【実施例】図2は,本発明の実施例で用いるハードウェ
ア構成例を示す。本発明は,一般の単一システム,また
は図2に示すような複合システムに適用することができ
る。
ア構成例を示す。本発明は,一般の単一システム,また
は図2に示すような複合システムに適用することができ
る。
【0032】半導体で構成される不揮発性記憶装置10
には,一般のメモリ部30と図1に示すデータ格納域1
3などの転送データロギング域31が設けられる。各計
算機本体14A,14Bは,CPU33およびローカル
に使用するメモリ部35を持ち,不揮発性記憶装置10
に対しては,メモリ制御装置(MCU)32を介して,
アクセスできるようになっている。また,転送データロ
ギング域31への転送データを一時的に保持する転送デ
ータバッファ34を持つ。
には,一般のメモリ部30と図1に示すデータ格納域1
3などの転送データロギング域31が設けられる。各計
算機本体14A,14Bは,CPU33およびローカル
に使用するメモリ部35を持ち,不揮発性記憶装置10
に対しては,メモリ制御装置(MCU)32を介して,
アクセスできるようになっている。また,転送データロ
ギング域31への転送データを一時的に保持する転送デ
ータバッファ34を持つ。
【0033】図3は,本発明の適用システム説明図であ
る。本発明の実施例を説明するに先立ち,その前提とな
る適用システムの概要を,図3に従って説明する。図3
において,40はアプリケーション空間,41はアプリ
ケーション空間40上で動作する応用プログラム,42
はデータベースへの入出力のためのページバッファ,4
3はバックアウトログファイル(以下,BOFという)
への入出力のためのBOFバッファ,44は応用プログ
ラム41の処理に伴うログデータの格納に使用するタス
クログバッファ,45はデータベース,46はトランザ
クション途中における異常発生時にデータベース45の
内容を復元するためのデータが格納されるBOF,47
はHLF(Historical Log File) への入出力のためのH
LFバッファ群からなるHLFバッファプール,48は
システムで共用される共用空間,49はログデータの書
き込みのためのバッファ,50はデータベース管理サブ
システム(DBMS)が動作するDBMS空間,51は
データベース45の格納媒体破壊時にそれを修復するた
めのログデータが格納されるHLF,52はHLF51
への書き込みのためのバッファを表す。
る。本発明の実施例を説明するに先立ち,その前提とな
る適用システムの概要を,図3に従って説明する。図3
において,40はアプリケーション空間,41はアプリ
ケーション空間40上で動作する応用プログラム,42
はデータベースへの入出力のためのページバッファ,4
3はバックアウトログファイル(以下,BOFという)
への入出力のためのBOFバッファ,44は応用プログ
ラム41の処理に伴うログデータの格納に使用するタス
クログバッファ,45はデータベース,46はトランザ
クション途中における異常発生時にデータベース45の
内容を復元するためのデータが格納されるBOF,47
はHLF(Historical Log File) への入出力のためのH
LFバッファ群からなるHLFバッファプール,48は
システムで共用される共用空間,49はログデータの書
き込みのためのバッファ,50はデータベース管理サブ
システム(DBMS)が動作するDBMS空間,51は
データベース45の格納媒体破壊時にそれを修復するた
めのログデータが格納されるHLF,52はHLF51
への書き込みのためのバッファを表す。
【0034】以下の説明における処理(a) 〜(d) は,図
3に示す(a) 〜(d) に対応している。 (a) トランザクションがスタートし,データベース45
からのデータの読み込みを行う応用プログラム41は,
読み込み(GET)マクロ命令を発行する。これによ
り,次の処理(a1)〜(a6)が行われる。
3に示す(a) 〜(d) に対応している。 (a) トランザクションがスタートし,データベース45
からのデータの読み込みを行う応用プログラム41は,
読み込み(GET)マクロ命令を発行する。これによ
り,次の処理(a1)〜(a6)が行われる。
【0035】(a1)読み込みのためのページバッファ42
が満杯の場合,ページバッファ42に空きを作るため,
次の(a4)までの処理を実行する。ページバッファ42に
空きがある場合には,処理(a5)へ進む。
が満杯の場合,ページバッファ42に空きを作るため,
次の(a4)までの処理を実行する。ページバッファ42に
空きがある場合には,処理(a5)へ進む。
【0036】(a2)BOFバッファ43内の更新前データ
をBOF46に格納する。そのため,BOF46の空
きブロック検索処理,更新前データの空きブロックへ
の転送処理,BOF46のインデックス(IX)部の
更新処理を実行する。
をBOF46に格納する。そのため,BOF46の空
きブロック検索処理,更新前データの空きブロックへ
の転送処理,BOF46のインデックス(IX)部の
更新処理を実行する。
【0037】(a3)タスクログバッファ44に更新後デー
タを格納する。 (a4)データベース45の途中実更新を実行する。 (a5)ページバッファ42に,指定されたデータベース4
5のページを読み込む。
タを格納する。 (a4)データベース45の途中実更新を実行する。 (a5)ページバッファ42に,指定されたデータベース4
5のページを読み込む。
【0038】(a6)応用プログラム41内のレコード域へ
ページバッファ45のレコードを転送する。 (b) 応用プログラム41は,データベース45を更新す
る場合,更新(MODIFY)マクロ命令を発行する。
このとき,次の処理(b1)〜(b4)が行われる。
ページバッファ45のレコードを転送する。 (b) 応用プログラム41は,データベース45を更新す
る場合,更新(MODIFY)マクロ命令を発行する。
このとき,次の処理(b1)〜(b4)が行われる。
【0039】(b1)レコード域のレコードを更新する。 (b2)ページバッファ42上の更新前データを,BOFバ
ッファ43に転送する。
ッファ43に転送する。
【0040】(b3)応用プログラム41内のレコード域か
ら,更新後データをページバッファ42に転送する。 (b4)ページバッファ42上の更新後データのアドレスを
HLFグループ毎に分割して,タスクログバッファ44
に転送する。
ら,更新後データをページバッファ42に転送する。 (b4)ページバッファ42上の更新後データのアドレスを
HLFグループ毎に分割して,タスクログバッファ44
に転送する。
【0041】(c) トランザクションを終了させる場合,
応用プログラム41は,トランザクション終了(TRN
END)マクロ命令を発行する。これにより,次の処理
(c1)〜(c7)が実行される。
応用プログラム41は,トランザクション終了(TRN
END)マクロ命令を発行する。これにより,次の処理
(c1)〜(c7)が実行される。
【0042】(c1)更新後データを共用空間48のバッフ
ァ49に転送する。 (c2)複合システムの場合,いわゆるグローバル・ロック
を獲得し,他クラスタとの排他をとる(単独システムで
は不要)。
ァ49に転送する。 (c2)複合システムの場合,いわゆるグローバル・ロック
を獲得し,他クラスタとの排他をとる(単独システムで
は不要)。
【0043】(c3)共用空間48上のバッファ49にある
更新後データを,BOF46に格納する。一般に,BO
F46には更新前データだけが格納されるのが普通であ
るが,本実施例では,トランザクション処理中にデータ
ベース45の格納媒体障害が発生したときの復旧処理を
高速化するため,更新後データについてもBOF46に
採取している。この格納処理のため,BOF46の空
きブロック検索処理,更新後データの空きブロックへ
の転送処理,BOF46のインデックス(IX)部の
更新処理を実行する。
更新後データを,BOF46に格納する。一般に,BO
F46には更新前データだけが格納されるのが普通であ
るが,本実施例では,トランザクション処理中にデータ
ベース45の格納媒体障害が発生したときの復旧処理を
高速化するため,更新後データについてもBOF46に
採取している。この格納処理のため,BOF46の空
きブロック検索処理,更新後データの空きブロックへ
の転送処理,BOF46のインデックス(IX)部の
更新処理を実行する。
【0044】(c4)次に,共用空間48上のバッファ49
にある更新後データを,不揮発性記憶装置10に設けら
れたHLFバッファプール47における該当するHLF
バッファに転送し,排他を解除する。
にある更新後データを,不揮発性記憶装置10に設けら
れたHLFバッファプール47における該当するHLF
バッファに転送し,排他を解除する。
【0045】(c5)その後,データベース45の一括実更
新を実行する。 (c6)トランザクションの終了により,BOF46のイン
デックス部を初期化する。
新を実行する。 (c6)トランザクションの終了により,BOF46のイン
デックス部を初期化する。
【0046】(c7)トランザクションが獲得していた資源
の占有を解除する(図示省略)。 (d) 以上の処理(a) 〜(c) はトランザクション同期処理
であるが,これに対し,トランザクション処理とは非同
期に,不揮発性記憶装置10上のHLFバッファが満杯
になったことを契機にして,更新後データをバッファ5
2を経由しHLF51に格納する。
の占有を解除する(図示省略)。 (d) 以上の処理(a) 〜(c) はトランザクション同期処理
であるが,これに対し,トランザクション処理とは非同
期に,不揮発性記憶装置10上のHLFバッファが満杯
になったことを契機にして,更新後データをバッファ5
2を経由しHLF51に格納する。
【0047】本発明は,例えば図3におけるHLFバッ
ファプール47へのデータ転送における完結性保証のた
めに用いることができる。図4はその本発明の実施例説
明図,図5ないし図7はその実施例における詳細なデー
タ関連図である。
ファプール47へのデータ転送における完結性保証のた
めに用いることができる。図4はその本発明の実施例説
明図,図5ないし図7はその実施例における詳細なデー
タ関連図である。
【0048】システム記憶である不揮発性記憶装置10
は,計算機本体14からの8バイトのデータ完結性を保
証する読み込み・書き込み命令によるアクセスが可能と
なっている。その命令の詳細についてはよく知られてい
るので,ここでの詳しい説明は省略する。
は,計算機本体14からの8バイトのデータ完結性を保
証する読み込み・書き込み命令によるアクセスが可能と
なっている。その命令の詳細についてはよく知られてい
るので,ここでの詳しい説明は省略する。
【0049】最新データ制御域11,第1制御データ域
12A,第2制御データ域12Bは,システム記憶に設
けられ,図5に示すような情報を管理する。すなわち,
最新データ制御域11は,最新の有効となっている制御
データ格納域(CTBL)12Aまたは12Bへのアド
レスを持つ。
12A,第2制御データ域12Bは,システム記憶に設
けられ,図5に示すような情報を管理する。すなわち,
最新データ制御域11は,最新の有効となっている制御
データ格納域(CTBL)12Aまたは12Bへのアド
レスを持つ。
【0050】HLFバッファプール47もシステム記憶
内に設けられる。HLFバッファプール47の各エント
リを,HLFバッファと呼ぶ。最新データ制御域11の
エントリおよび第1制御データ域12A,第2制御デー
タ域12Bは,各HLFバッファに対応して複数組設け
られる。
内に設けられる。HLFバッファプール47の各エント
リを,HLFバッファと呼ぶ。最新データ制御域11の
エントリおよび第1制御データ域12A,第2制御デー
タ域12Bは,各HLFバッファに対応して複数組設け
られる。
【0051】各制御データ域12A,12Bにおけるア
クセスキーは,対応するHLFバッファを識別するため
のキー情報である。HLFバッファ内相対アドレスは,
HLFバッファにおける空き領域の先頭アドレスを指し
ており,HLFバッファに対するレコード転送先のアド
レスとなる。すなわち,次の更新後データは,このアド
レスを先頭として転送される。未転送レコード長は,H
LFバッファに転送しようとする更新後データの長さを
指している。この未転送レコード長は,更新後データの
HLFバッファへの転送が完了した時点で0に初期化さ
れる。未転送レコード長が0に初期化されている場合,
そのデータ転送は完結していることを表す。
クセスキーは,対応するHLFバッファを識別するため
のキー情報である。HLFバッファ内相対アドレスは,
HLFバッファにおける空き領域の先頭アドレスを指し
ており,HLFバッファに対するレコード転送先のアド
レスとなる。すなわち,次の更新後データは,このアド
レスを先頭として転送される。未転送レコード長は,H
LFバッファに転送しようとする更新後データの長さを
指している。この未転送レコード長は,更新後データの
HLFバッファへの転送が完了した時点で0に初期化さ
れる。未転送レコード長が0に初期化されている場合,
そのデータ転送は完結していることを表す。
【0052】HLFバッファプール47の管理のため
に,図6に示すようなHLFバッファ管理テーブル70
がシステム記憶内に設けられる。HLFバッファ管理テ
ーブル70は,共通の管理情報を持つヘッダ部と,各H
LFバッファ対応に設けられる個別部からなる。
に,図6に示すようなHLFバッファ管理テーブル70
がシステム記憶内に設けられる。HLFバッファ管理テ
ーブル70は,共通の管理情報を持つヘッダ部と,各H
LFバッファ対応に設けられる個別部からなる。
【0053】ヘッダ部は,バッファ書出し処理中表示,
使用可能なHLFバッファを示すエントリのアドレス,
使用済み(使用中)HLFバッファを示すエントリのア
ドレスなどの情報を持つ。各HLFバッファ対応の個別
部は,次のエントリをポイントするエントリ番号,HL
Fバッファプール47におけるHLFバッファへのアド
レス,書出し責任元システム名,第1制御データ格納域
の情報および第2制御データ格納域の情報などを持つ。
使用可能なHLFバッファを示すエントリのアドレス,
使用済み(使用中)HLFバッファを示すエントリのア
ドレスなどの情報を持つ。各HLFバッファ対応の個別
部は,次のエントリをポイントするエントリ番号,HL
Fバッファプール47におけるHLFバッファへのアド
レス,書出し責任元システム名,第1制御データ格納域
の情報および第2制御データ格納域の情報などを持つ。
【0054】図4に示すBOF(BackOut log File)46
は,トランザクション途中の更新前/更新後ログデータ
を格納している。これらのログデータは,トランザクシ
ョンが完結すると初期化される。BOF46は,図7
(A)に示すようなBOFインデックス部と,図7
(B)に示すようなBOFデータ部とからなる。
は,トランザクション途中の更新前/更新後ログデータ
を格納している。これらのログデータは,トランザクシ
ョンが完結すると初期化される。BOF46は,図7
(A)に示すようなBOFインデックス部と,図7
(B)に示すようなBOFデータ部とからなる。
【0055】BOFインデックス部は,ログデータが格
納されたブロックおよびトランザクション情報を管理し
ている。トランザクション情報としては,ログデータ発
生システム名,ログデータ発生トランザクション識別
子,ログデータが出力されたときのトランザクションの
状態などの情報がある。
納されたブロックおよびトランザクション情報を管理し
ている。トランザクション情報としては,ログデータ発
生システム名,ログデータ発生トランザクション識別
子,ログデータが出力されたときのトランザクションの
状態などの情報がある。
【0056】BOFデータ部は,ログデータを格納して
いる部分であり,BOFデータ部のブロック長は,HL
Fバッファ長に等しい。ログデータの転送要求の際に指
定されるパラメタパケット62は,図7(C)に示すよ
うな情報を持つ。すなわち,パラメタパケット62は,
読み込みか書き込みかを示す要求コード,HLFバッフ
ァに対するアクセスキー,転送アドレス(転送先のHL
Fバッファ内相対アドレス),転送データ長,ログデー
タが格納されているシステム記憶(SSU)転送元バッ
ファ63のアドレスなどの情報を持つ。
いる部分であり,BOFデータ部のブロック長は,HL
Fバッファ長に等しい。ログデータの転送要求の際に指
定されるパラメタパケット62は,図7(C)に示すよ
うな情報を持つ。すなわち,パラメタパケット62は,
読み込みか書き込みかを示す要求コード,HLFバッフ
ァに対するアクセスキー,転送アドレス(転送先のHL
Fバッファ内相対アドレス),転送データ長,ログデー
タが格納されているシステム記憶(SSU)転送元バッ
ファ63のアドレスなどの情報を持つ。
【0057】図4に示すシステムにおいて,HLFバッ
ファプール47へのログデータ書き込み処理は,以下の
ように行われる。 (1) 応用プログラム41から,トランザクション終了
(TRNEND)マクロ命令が発行されると,データベ
ース管理サブシステム(図示省略)を経由して,更新ロ
グデータの保証処理が開始される。
ファプール47へのログデータ書き込み処理は,以下の
ように行われる。 (1) 応用プログラム41から,トランザクション終了
(TRNEND)マクロ命令が発行されると,データベ
ース管理サブシステム(図示省略)を経由して,更新ロ
グデータの保証処理が開始される。
【0058】(2) 図6に示すHLFバッファ管理テーブ
ル70を読み込み,使用可能なHLFバッファ(これを
カレントHLFバッファという)のアドレスを知る。 (3) システム起動後の最初のログデータの書き込み処理
かどうかを判定し,最初でない場合には,処理(13)へ進
む。
ル70を読み込み,使用可能なHLFバッファ(これを
カレントHLFバッファという)のアドレスを知る。 (3) システム起動後の最初のログデータの書き込み処理
かどうかを判定し,最初でない場合には,処理(13)へ進
む。
【0059】(4) 最初のログデータの書き込み処理であ
る場合,最新データ制御域11を読み込み,最新の制御
データ域のアドレスを知る(説明を簡単にするため,こ
こでは,第1制御データ域12Aが最新であるとす
る)。
る場合,最新データ制御域11を読み込み,最新の制御
データ域のアドレスを知る(説明を簡単にするため,こ
こでは,第1制御データ域12Aが最新であるとす
る)。
【0060】(5) 最新ではない第2制御データ域12B
のエントリを読み込み,未転送レコード長が設定されて
いるかどうかを判定する。未転送レコード長が初期化状
態であれば,処理(13)へ進む。
のエントリを読み込み,未転送レコード長が設定されて
いるかどうかを判定する。未転送レコード長が初期化状
態であれば,処理(13)へ進む。
【0061】(6) 未転送レコード長が設定状態であれ
ば,第2制御データ域12BのHLFバッファ内相対ア
ドレスを読み込み,HLFバッファにおける書き込み済
みデータの最終アドレス(これをP1とする)を得る。
ば,第2制御データ域12BのHLFバッファ内相対ア
ドレスを読み込み,HLFバッファにおける書き込み済
みデータの最終アドレス(これをP1とする)を得る。
【0062】(7) 使用中のカレントHLFバッファの0
〜P1に存在するレコード制御部を読み込み,転送済み
トランザクション識別子を知る。 (8) BOFインデックス部を全検索する。転送済みでな
いトランザクション識別子が存在しない場合,処理(11)
へ進む。
〜P1に存在するレコード制御部を読み込み,転送済み
トランザクション識別子を知る。 (8) BOFインデックス部を全検索する。転送済みでな
いトランザクション識別子が存在しない場合,処理(11)
へ進む。
【0063】(9) 転送済みでないトランザクション識別
子がBOFインデックス部中に存在するとき,そのトラ
ンザクション識別子の更新後データ格納ブロック番号を
読み込む。
子がBOFインデックス部中に存在するとき,そのトラ
ンザクション識別子の更新後データ格納ブロック番号を
読み込む。
【0064】(10)処理(9) で読み込んだブロック番号の
ブロックに格納された更新後データを,再度HLFバッ
ファの相対アドレスP1に書き込む。(11)第2制御デー
タ域12Bの未転送レコード長を初期化する。
ブロックに格納された更新後データを,再度HLFバッ
ファの相対アドレスP1に書き込む。(11)第2制御デー
タ域12Bの未転送レコード長を初期化する。
【0065】(12)最新データ制御域11の制御データ域
アドレスを,第2制御データ域12Bへ切り替える。 (13)最新データ制御域11を読み込み,最新の制御デー
タ域アドレスを知る(以下,説明を簡単にするため,最
新の制御データ域は第2制御データ域12Bであるとす
る)。
アドレスを,第2制御データ域12Bへ切り替える。 (13)最新データ制御域11を読み込み,最新の制御デー
タ域アドレスを知る(以下,説明を簡単にするため,最
新の制御データ域は第2制御データ域12Bであるとす
る)。
【0066】(14)第2制御データ域12Bのエントリを
読み込み,当該HLFバッファのどこから使用可能であ
るかを知る。 (15)以下の処理を行った後で,ログデータ保証のための
ログ書き込みマクロ命令を発行する。
読み込み,当該HLFバッファのどこから使用可能であ
るかを知る。 (15)以下の処理を行った後で,ログデータ保証のための
ログ書き込みマクロ命令を発行する。
【0067】主記憶のSSU転送元バッファ63に更
新後データを書き込む。 パラメタパケット62に必要な値を設定する。 (16)データ完結性保証機構60のログ書き込み処理で
は,パラメタパケット62の転送データ長を読み,書き
込むレコード長を未転送レコード長として,最新データ
制御域11が示していないほうの制御データ域(すなわ
ち,第1制御データ域12A)に書き込む。
新後データを書き込む。 パラメタパケット62に必要な値を設定する。 (16)データ完結性保証機構60のログ書き込み処理で
は,パラメタパケット62の転送データ長を読み,書き
込むレコード長を未転送レコード長として,最新データ
制御域11が示していないほうの制御データ域(すなわ
ち,第1制御データ域12A)に書き込む。
【0068】(17)パラメタパケット62の転送アドレス
およびSSU転送元バッファアドレスを読み込み,SS
U転送元バッファ63の内容を,HLFバッファへ転送
する。
およびSSU転送元バッファアドレスを読み込み,SS
U転送元バッファ63の内容を,HLFバッファへ転送
する。
【0069】(18)第1制御データ域12Aの未転送レコ
ード長を初期化する。 (19)最新データ制御域11の制御データ域アドレスを,
第1制御データ域12Aへ切り替える。
ード長を初期化する。 (19)最新データ制御域11の制御データ域アドレスを,
第1制御データ域12Aへ切り替える。
【0070】(20)ログ書き込みマクロ命令の発行元へ復
帰する。 (21)データベース管理サブシステムを経由して,応用プ
ログラム41へ復帰する。
帰する。 (21)データベース管理サブシステムを経由して,応用プ
ログラム41へ復帰する。
【0071】複合システムにおけるダウン監視の延長で
行われるHLFバッファ復旧処理は,以下のように行わ
れる。 (1) ダウン監視機構(図示省略)から,他システムのダ
ウン通知を受ける。このとき,ダウンシステムのトラン
ザクションが占有していたレコードは,占有されたまま
の状態である。
行われるHLFバッファ復旧処理は,以下のように行わ
れる。 (1) ダウン監視機構(図示省略)から,他システムのダ
ウン通知を受ける。このとき,ダウンシステムのトラン
ザクションが占有していたレコードは,占有されたまま
の状態である。
【0072】(2) HLFバッファ管理テーブル70を読
み込み,使用中のカレントHLFバッファアドレスを知
る。 (3) 最新データ制御域11を読み込み,最新の制御デー
タ域アドレスを知る(以下,説明を簡単にするため,最
新の制御データ域は第1制御データ域12Aであるとす
る)。
み込み,使用中のカレントHLFバッファアドレスを知
る。 (3) 最新データ制御域11を読み込み,最新の制御デー
タ域アドレスを知る(以下,説明を簡単にするため,最
新の制御データ域は第1制御データ域12Aであるとす
る)。
【0073】(4) 第2制御データ域12Bのエントリを
読み込み,未転送レコード長が設定されているかどうか
を判定する。未転送レコード長が初期化状態であれば,
処理(12)へ進む。
読み込み,未転送レコード長が設定されているかどうか
を判定する。未転送レコード長が初期化状態であれば,
処理(12)へ進む。
【0074】(5) 未転送レコード長が設定されていれ
ば,第2制御データ域12BのHLFバッファ内相対ア
ドレスを読み込み,HLFバッファにおける書き込み済
みデータの最終アドレス(これをP1とする)を得る。
ば,第2制御データ域12BのHLFバッファ内相対ア
ドレスを読み込み,HLFバッファにおける書き込み済
みデータの最終アドレス(これをP1とする)を得る。
【0075】(6) 使用中のカレントHLFバッファの0
〜P1に存在するレコード制御部を読み込み,転送済み
トランザクション識別子を知る。 (7) BOFインデックス部を全検索する。転送済みでな
いトランザクション識別子が存在しない場合,処理(10)
へ進む。
〜P1に存在するレコード制御部を読み込み,転送済み
トランザクション識別子を知る。 (7) BOFインデックス部を全検索する。転送済みでな
いトランザクション識別子が存在しない場合,処理(10)
へ進む。
【0076】(8) 転送済みでないトランザクション識別
子がBOFインデックス部中に存在するとき,そのトラ
ンザクション識別子の更新後データ格納ブロック番号を
読み込む。
子がBOFインデックス部中に存在するとき,そのトラ
ンザクション識別子の更新後データ格納ブロック番号を
読み込む。
【0077】(9) 処理(8) で読み込んだブロック番号の
ブロックに格納された更新後データを,再度HLFバッ
ファの相対アドレスP1に書き込む。 (10)第2制御データ域12Bの未転送レコード長を初期
化する。
ブロックに格納された更新後データを,再度HLFバッ
ファの相対アドレスP1に書き込む。 (10)第2制御データ域12Bの未転送レコード長を初期
化する。
【0078】(11)最新データ制御域11の制御データ域
アドレスを,第2制御データ域12Bへ切り替える。 (12)ダウン監視機構へ復帰する。
アドレスを,第2制御データ域12Bへ切り替える。 (12)ダウン監視機構へ復帰する。
【0079】なお,以上の実施例におけるデータ保証処
理の一部を,ファームウェアによって実現することも可
能である。
理の一部を,ファームウェアによって実現することも可
能である。
【0080】
【発明の効果】従来のデータ保証制御方式によるデータ
転送では,不揮発性記憶装置に対するアクセス回数が増
加するため,トランザクション処理におけるCPUオー
バヘッドを削減できなかった。しかし,本発明によれ
ば,ログバッファなどのトランザクション処理で頻繁に
更新し,かつデータの完結性が要求されるデータを,半
導体外部記憶装置で構成される不揮発性記憶装置に配置
し,少ないCPUオーバヘッドでアクセスすることがで
きるようになる。その結果,以下の効果が得られる。
転送では,不揮発性記憶装置に対するアクセス回数が増
加するため,トランザクション処理におけるCPUオー
バヘッドを削減できなかった。しかし,本発明によれ
ば,ログバッファなどのトランザクション処理で頻繁に
更新し,かつデータの完結性が要求されるデータを,半
導体外部記憶装置で構成される不揮発性記憶装置に配置
し,少ないCPUオーバヘッドでアクセスすることがで
きるようになる。その結果,以下の効果が得られる。
【0081】 データの転送中に,システムダウンな
どの原因で転送処理が中断しても,転送データの完結性
を保証することが可能になる。 さらに,従来のデータ完結性保証処理に比べて,シ
ステム記憶に対するアクセス回数が少なくなるため,ロ
グバッファなどのアクセス回数が多いデータに対して,
本方法を適用することにより,高性能なシステムを構築
することが可能になる。
どの原因で転送処理が中断しても,転送データの完結性
を保証することが可能になる。 さらに,従来のデータ完結性保証処理に比べて,シ
ステム記憶に対するアクセス回数が少なくなるため,ロ
グバッファなどのアクセス回数が多いデータに対して,
本方法を適用することにより,高性能なシステムを構築
することが可能になる。
【0082】その結果として,半導体外部記憶装置にデ
ータベースおよびログファイルを配置し,これらをシス
テム間で共用するようなロードシェアシステムおよび高
速ホットスタンバイシステムを構築することが可能にな
る。
ータベースおよびログファイルを配置し,これらをシス
テム間で共用するようなロードシェアシステムおよび高
速ホットスタンバイシステムを構築することが可能にな
る。
【図1】本発明の原理説明図である。
【図2】本発明の実施例で用いるハードウェア構成例を
示す図である。
示す図である。
【図3】本発明の適用システム説明図である。
【図4】本発明の実施例説明図である。
【図5】本発明の実施例に係るデータ関連図である。
【図6】本発明の実施例に係るデータ関連図である。
【図7】本発明の実施例に係るデータ関連図である。
【図8】従来技術の説明図である。
【図9】従来技術の問題点説明図である。
10 不揮発性記憶装置 11 最新データ制御域 12A 第1制御データ域 12B 第2制御データ域 13 データ格納域 14 計算機本体
Claims (2)
- 【請求項1】 計算機本体(14)と,該計算機本体(14)の
発行する命令によって読み書き可能な不揮発性の記憶装
置(10)とを備え,前記記憶装置(10)上に設けられた制御
データ域(12)に書き込むデータ群の完結性を保証する計
算機システムにおけるデータ完結性保証処理方法におい
て, 前記制御データ域(12)を,前記記憶装置(10)上に複数個
用意し, 前記複数個の制御データ域(12)のうち,データ群の書き
込みが完了した最新のデータを保持する制御データ域(1
2)をポイントする最新データ制御域(11)を,前記記憶装
置(10)上に設け, 制御データ域(12)を更新する場合に,前記最新データ制
御域(11)からポイントされないほうの制御データ域(12)
に更新するデータ群を書き込み,そのデータ群の書き込
みが完了した時点で,前記最新データ制御域(11)におけ
るポインタを,書き込みが完了した制御データ域(12)を
ポイントするように,ポインタ書き込み処理の完結性が
保証される1命令で書き込み, 前記最新データ制御域(11)からポイントされる制御デー
タ域(12)を,有効なデータを保持する制御データ域(12)
として扱うことを特徴とするデータ完結性保証処理方
法。 - 【請求項2】 計算機本体(14)と,該計算機本体(14)の
発行する命令によって読み書き可能な不揮発性の記憶装
置(10)とを備え,前記記憶装置(10)上に設けられたデー
タ格納域(13)に対して転送するレコードの完結性を保証
する計算機システムにおけるデータ完結性保証処理方法
において, 前記データ格納域(13)に転送されたレコードの完結性を
検査するためのデータ群を格納する制御データ域(12)
を,前記記憶装置(10)上に複数個用意し, 前記複数個の制御データ域(12)のうち,データ群の書き
込みが完了した最新のデータを保持する制御データ域(1
2)をポイントする最新データ制御域(11)を,前記記憶装
置(10)上に設け, 前記データ格納域(13)にレコードを転送する場合に,前
記最新データ制御域(11)からポイントされないほうの制
御データ域(12)にそのレコードの完結性を検査するため
のデータ群を書き込むと共に,前記データ格納域(13)に
レコードを転送し,それらが完了した時点で,前記最新
データ制御域(11)におけるポインタを,書き込みが完了
した制御データ域(12)をポイントするように,ポインタ
書き込み処理の完結性が保証される1命令で書き込み, 前記データ格納域(13)に転送したレコードの完結性およ
びその完結性を検査するための制御データ域(12)のデー
タ群の完結性を保証することを特徴とするデータ完結性
保証処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4296766A JPH06149485A (ja) | 1992-11-06 | 1992-11-06 | データ完結性保証処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4296766A JPH06149485A (ja) | 1992-11-06 | 1992-11-06 | データ完結性保証処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH06149485A true JPH06149485A (ja) | 1994-05-27 |
Family
ID=17837856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4296766A Withdrawn JPH06149485A (ja) | 1992-11-06 | 1992-11-06 | データ完結性保証処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH06149485A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7069305B2 (en) | 2000-06-08 | 2006-06-27 | Hitachi, Ltd. | Computer system and a data transfer method thereof using remote direct memory access |
US7085788B2 (en) | 2003-12-03 | 2006-08-01 | Hitachi, Ltd. | Remote copy system configured to receive both a write request including a write time and a write request not including a write time. |
US7197615B2 (en) | 2004-07-07 | 2007-03-27 | Hitachi, Ltd. | Remote copy system maintaining consistency |
US7330861B2 (en) | 2004-09-10 | 2008-02-12 | Hitachi, Ltd. | Remote copying system and method of controlling remote copying |
US7437389B2 (en) | 2004-03-10 | 2008-10-14 | Hitachi, Ltd. | Remote copy system |
US7724599B2 (en) | 2003-12-03 | 2010-05-25 | Hitachi, Ltd. | Remote copy system |
US7945750B2 (en) | 2006-03-28 | 2011-05-17 | Hitachi, Ltd. | Storage system and remote copy control method for storage system |
US8032726B2 (en) | 2003-12-03 | 2011-10-04 | Hitachi, Ltd | Remote copy system |
-
1992
- 1992-11-06 JP JP4296766A patent/JPH06149485A/ja not_active Withdrawn
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7069305B2 (en) | 2000-06-08 | 2006-06-27 | Hitachi, Ltd. | Computer system and a data transfer method thereof using remote direct memory access |
US7724599B2 (en) | 2003-12-03 | 2010-05-25 | Hitachi, Ltd. | Remote copy system |
US8250240B2 (en) | 2003-12-03 | 2012-08-21 | Hitachi, Ltd. | Message conversion method and message conversion system |
US7293050B2 (en) | 2003-12-03 | 2007-11-06 | Hitachi, Ltd. | Remote copy system |
US7085788B2 (en) | 2003-12-03 | 2006-08-01 | Hitachi, Ltd. | Remote copy system configured to receive both a write request including a write time and a write request not including a write time. |
US8032726B2 (en) | 2003-12-03 | 2011-10-04 | Hitachi, Ltd | Remote copy system |
US8176010B2 (en) | 2003-12-03 | 2012-05-08 | Hitachi, Ltd. | Remote copy system |
US8375000B2 (en) | 2003-12-03 | 2013-02-12 | Hitachi, Ltd. | Remote copy system |
US7437389B2 (en) | 2004-03-10 | 2008-10-14 | Hitachi, Ltd. | Remote copy system |
US7865678B2 (en) | 2004-07-07 | 2011-01-04 | Hitachi, Ltd. | Remote copy system maintaining consistency |
US7197615B2 (en) | 2004-07-07 | 2007-03-27 | Hitachi, Ltd. | Remote copy system maintaining consistency |
US7330861B2 (en) | 2004-09-10 | 2008-02-12 | Hitachi, Ltd. | Remote copying system and method of controlling remote copying |
US7945750B2 (en) | 2006-03-28 | 2011-05-17 | Hitachi, Ltd. | Storage system and remote copy control method for storage system |
US8347053B2 (en) | 2006-03-28 | 2013-01-01 | Hitachi, Ltd. | Storage system and remote copy control method for storage system |
US8200928B2 (en) | 2006-03-28 | 2012-06-12 | Hitachi, Ltd. | Storage system and remote copy control method for storage system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4905196A (en) | Method and storage device for saving the computer status during interrupt | |
US5619644A (en) | Software directed microcode state save for distributed storage controller | |
US5732238A (en) | Non-volatile cache for providing data integrity in operation with a volatile demand paging cache in a data storage system | |
US6018746A (en) | System and method for managing recovery information in a transaction processing system | |
US6934877B2 (en) | Data backup/recovery system | |
US5497483A (en) | Method and system for track transfer control during concurrent copy operations in a data processing storage subsystem | |
US5638508A (en) | Method and a system for processing a log record | |
US4823261A (en) | Multiprocessor system for updating status information through flip-flopping read version and write version of checkpoint data | |
US5241670A (en) | Method and system for automated backup copy ordering in a time zero backup copy session | |
US7899800B2 (en) | Systems and methods for providing nonlinear journaling | |
US5193162A (en) | Cache memory with data compaction for use in the audit trail of a data processing system having record locking capabilities | |
US5379398A (en) | Method and system for concurrent access during backup copying of data | |
US20030200394A1 (en) | Cache memory arrangement and methods for use in a cache memory system | |
KR100238925B1 (ko) | 비휘발성 메모리를 갖는 복원 가능 디스크 제어 시스템 | |
JPH0683677A (ja) | データの増分タイム・ゼロ・バックアップ・コピーの方法及びシステム | |
JPH0644010A (ja) | タイムゼロ・バックアップ・コピー・プロセスにおける副ファイル状態のポーリングのための方法およびシステム | |
JP2003513357A (ja) | 論理フラッシュメモリ装置を用いて原子的更新を実行する方法および装置 | |
JPH06149485A (ja) | データ完結性保証処理方法 | |
US6854038B2 (en) | Global status journaling in NVS | |
JPS62245348A (ja) | データベース更新方法 | |
JP2001229063A (ja) | データ管理システム | |
KR100365891B1 (ko) | 주기억장치 상주형 데이터베이스 시스템에서 로그 처리를하지 않는 백업/회복 장치 및 그 방법 | |
JPS63133240A (ja) | 常駐テ−ブルの内容保証方式 | |
JP2658265B2 (ja) | 障害回復方法 | |
KR100630213B1 (ko) | 데이터 저장시스템에서 데이터 버퍼 제어 블록을 이용한로그 우선 출력 프로토콜 수행 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20000201 |