JPS62237539A - デ−タベ−ス更新方法および装置 - Google Patents

デ−タベ−ス更新方法および装置

Info

Publication number
JPS62237539A
JPS62237539A JP61079916A JP7991686A JPS62237539A JP S62237539 A JPS62237539 A JP S62237539A JP 61079916 A JP61079916 A JP 61079916A JP 7991686 A JP7991686 A JP 7991686A JP S62237539 A JPS62237539 A JP S62237539A
Authority
JP
Japan
Prior art keywords
database
transaction
page table
page
updated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP61079916A
Other languages
English (en)
Other versions
JPH0823840B2 (ja
Inventor
Toru Nishigaki
西垣 通
Teizaburo Kanai
金居 貞三郎
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 Ltd
Original Assignee
Hitachi 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 Ltd filed Critical Hitachi Ltd
Priority to JP61079916A priority Critical patent/JPH0823840B2/ja
Publication of JPS62237539A publication Critical patent/JPS62237539A/ja
Publication of JPH0823840B2 publication Critical patent/JPH0823840B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、データベース・システムにおける、トランザ
クションのデータベース更新方式に係る。
特に、電源断等のシステム障害が発生してもデータベー
スの論理的一貫性を損うことなくデータベースを更新す
る方式に係る。
〔従来の技術〕
データベース・システムにおいては、電源断等によるシ
ステム障害やプログラム誤り等によるトランザクション
障害が発生したとき、データベースの論理的一貫性を保
たねばならない、特に障害発生時に実行未完了のトラン
ザクションによるデータベース更新結果については、こ
れを無効にしなければならない。
このための従来技術として、トランザクションがデータ
ベースを更新する際、更新前の情報の格納箇所とは異な
る新しい箇所に更新結果を格納する方式が知られており
、ニー・シー・エム、トランザクションズ オン デー
タベース システムズ、第2巻、第1号(1977年)
、第91頁〜104頁(ACM  Trans、 Da
tabase 5yst、 +VO1,2,NQI (
1977) 、 PP、 91 104)に述べられて
いる。この方式はシャドウ・ページ方式と呼ばれ、トラ
ンザクション実行完了までにその全てのデータベース更
新内容を新たな格納箇所に書き出し、トランザクション
実行完了時点で更新前情報を無効、更新後情報を有効と
する。シャドウ・ページ方式の特徴をまとめると次の(
1)〜(4)となる。
(1)データベースは論理的な領域の単位であるページ
から構成され、ページとページのデータベース蓄積媒体
上の格納箇所であるスロットとの反応を表わすページ・
テーブルをカレント版とバックアップ版の二つもつ。こ
れらはいずれもディスク等の不揮発性媒体上に格納され
る。ページ・テーブル自体も複数のブロックに分割され
、メモリと不揮発性媒体との間の転送はブロック単位に
行われる。
(2)トランザクションによってデータベースが更新さ
れる場合に更新ページの更新後の内容を格納する新たな
スロットをカレント・ページ・スロットと呼び、ページ
との対応はカレント版ページ・テーブルに保持する6一
方、更新前のページの内容を格納しているスロットをシ
ャドウ・ページ・スロットと呼び、ページとの対応はバ
ックアップ版ページ・テーブルに保持する。
(3)トランザクションの実行完了時、カレント版ペー
ジ・テーブルを有効とすることにより、カレント・ペー
ジ・スロットに格納された更新後情報を有効とする。具
体的には、カレント版とバックアップ版のうちいずれの
ページ・テーブルが有効かを示す不揮発性媒体上のステ
ィタス・ビットを変更する。
(4)トランザクション実行中にシステム/トランザク
ション障害が発生すると、スティタス・ビットによりバ
ックアップ版ページ・テーブルが有効なことがわかる。
すなわち、バックアップ版ページ・テーブルで示される
シャドウ・ページ・スロットに格納された更新前情報が
有効とされる。
したがって、システム/トランザクション障害が発生し
てもデータベースの論理的一貫性を保つことが可能であ
り、しかもデータベース更新履歴情報の取得は不要であ
る。
〔発明が解決しようとする問題点〕
と記シャドウ・ページ方式の従来技術は二つの問題点が
あった。第1に、同時に複数のトランザクションがデー
タベースを共用し、これを更新できないことである。こ
の理由は、トランザクション実行完了時にカレント版ペ
ージ・テーブルの有効化をスティタス・ビットの変更に
より一括して行うため、当該ページ・テーブルの中に他
の未だ実行中のトランザクションにより更新中のページ
が含まれてはならないためである。第2に、データベー
ス更新結果の有効化と、端末へ送信するメツセージやメ
モリ内のシステム管理情報の更新結果の有効化とを同期
させることが困難なことである。トランザクションは、
通常、データベース更新のみならずメツセージ送受信や
システム管理情報更新をも伴う。しかし、従来技術にお
けるスティタス・ビットの変更はデータベース更新のみ
にかかわっている。このため、システム障害が発生した
とき、タイミングによっては、データベース更新結果の
みが有効とされたり、逆にメツセージやシステム管理情
報更新結果のみが有効とされたりする恐れがある。
このため、複数のオンライン・トランザクションが同時
にデータベースを共用しこれを更新するような現実のシ
ステム環境のもとでは、前述のようなシャドウ・ページ
方式でなく、データベース更新履歴情報を取得する必要
があり、この取得オーバヘッドにより処理効率が低下す
る恐れがあった。
本発明は、シャドウ・ページ方式において、複数トラン
ザクションによるデータベースの同時更新を可能とし、
かつデータベース更新結果とメツセージ/システム管理
情報更新結果の同期的な有効化を可能とすることを目的
とする。
〔問題点を解決するための手段〕
上記第1の問題点は、不揮発性媒体上にもう1個バック
アップ版ページ・テーブルを設けること、および、バッ
クアップ版ページ・テーブルの各ブロックごとに2個の
ブロックのうちいずれが有効かを示す有効ブロック・マ
ップを設けること、さらに、いずれのバックアップ版ペ
ージ・テーブルにも、実行完了したトランザクションの
更新後ページ内容を格納したロットのみが登録され、実
行中のトランザクションの更新後ページ内容を格納した
スロットは登録されないよう構成することにより解決さ
れる。なおここで、従来不揮発性媒体上に格納されてい
たカレン1〜版ページ・テーブルはメモリ内にあればよ
く、必ずしも不揮発性媒体上に格納される必要はない。
また上記2個のブロックは一般に複数のブロックがあれ
ばよいが以下簡単のため2個として説明する。
第2の問題点は、上記一対(2個のブロックに対応)の
バックアップ版ページ・テーブルに加え、有効ブロック
・マップにこれを最新に更新したトランザクションの番
号を記録するエントリを設けること、また、トランザク
ションの処理完了を示す履歴レコード中に、該トランザ
クションで更新したページを含むバックアップ版ページ
・テーブルのブロック番号を記録するよう構成すること
、により解決される。
〔作用〕
上記手段の作用を以下にまとめる。
(1)トランザクション実行完了時、該トランザクショ
ンの更新ページを含むバックアップ版ページ・テーブル
の全てのブロックを更新する。ここで、更新後のブロッ
クの内容は、有効ブロック・ビットマップ上で有効とさ
れているブロックにおいて、該トランザクションの更新
ページをその更新後内容を格納したスロットと対応づけ
るよう変更したものである。また、更新(書きこみ)が
実行されるブロックは、−組(または1対)のブロック
のうち有効ブロック・ビットマップ上で無効とされてい
るブロックである。
すなわち、該トランザクションにかかわる一連のバック
アップ版ページ・テーブル・ブロックの更新動作を通じ
、システム障害が発生してもデータベースの論理的一貫
性が損われないように、有効なブロックは保存する。
(2) (1)の処理完了後、更新した全てのバックア
ップ版ページ・テーブルのブロックのブロック番号を、
トランザクションの処理完了を示す履歴レコードに書き
こむ。なお、当履歴レコードは、端末へのメツセージ、
メモリ内のシステム管理情報更新を表わす履歴レコード
と同じく、不揮発性媒体上の履歴ファイルに時系列的に
記録される。
(3) (2)の後、不揮発性媒体上の有効ブロック・
ビットマップにおいて、(2)で書きこんだ全てのブロ
ック番号に対応するビットを反転するよう、これを更新
する。このとき該トランザクションの番号も書き加える
以上(1)〜(3)の作用により、バックアップ版ペー
ジ・テーブルのひとつのブロックを複数のトランザクシ
ョンが同時に共用していても、実行完了したトランザク
ションの更新結果のみをバックアップ版ページ・テーブ
ルにおいて有効化することが可能となり、第1の問題点
は解決される。
また、(2)により処理完了を表わす履歴レコードを取
得したトランザクションについては。
(3)実行未完了の状態でシステム障害が発生しても該
履歴レコード中のブロック番号を読みだして(3)を完
遂することができる。逆に(2)が実行されないうちに
システム障害が発生すると、当トランザクションの全て
の処理は無効とすることができる。すなわち第2の間麗
点は解決される。
〔実施例〕
以下、本発明の一実施例を図面を用いて説明する。
まずシステム構成を述べる。第1図は、本発明の特徴を
表わす図である。バックアップ版ページ・テーブル10
は1個以上の固定長(たとえば512バイト)のブロッ
クから構成されており。
各ブロックは1回の人出カ動作で読みこみ/書きこみが
実行できる。成るブロック番号に対応して一対のブロッ
クが存在し、これらが集まってバックアップ版ページ・
テーブル用ブロック群20を構成している。一対のブロ
ックのうち、いずれが有効かを表わすのが有効ブロック
・ビットマップ30である。たとえば第1図において斜
線をほどこしたブロックが有効なブロックである。以下
「バックアップ版ページ・テーブル」は有効なブロック
のみから構成されるものを指すとする。有効ブロック・
ビットマップ30には、これを最近更新したトランザク
ションの番号32が記録されている。成るトランザクシ
ョンの処理が完了すると、その旨を表わすプロセス完了
ジャーナル4゜が履歴ファイル50上に取得される。プ
ロセス完了ジーナルには、そのジャーナル種別を示すコ
ード46と、該トランザクション番号42.および該ト
ランザクションで更新したページを含むバックアップ版
ページ・テーブルのブロックの番号44が記録される。
次に第2図はシステム全体構成を示す図であり。
磁気ディスク等に蓄積されたデータベース60と。
磁気ディスクや磁気テープ等に記録される履歴フアイル
50とが、CPU/メモリ7oに接続されている。デー
タベース60は、第3図に示したように、データベース
制御情報領域80およびデータベース領域90からなる
。データベース制御情報領域には、バックアップ版ペー
ジ・テーブル用ブロック群20や有効ブロック・ビット
マップ30等、データベースの参照、更新2回復に必要
な制御テーブルが格納される。また、データベース領域
90はスロットとよばれる固定長のブロックに分割され
ている。トランザクションが参照/更新するデータベー
スの空間はページとよばれる固定区画に分割されている
。スロットはページを格納するためのものであり1両者
のサイズは一致する(たとえば4にバイト)。各スロッ
トは1回の入出力動作で参照/更新ができる。第4図は
バックアップ版ページ・テーブル10を説明する図であ
り、各ページに対して、それがデータベース領域90上
で格納される位置を示す。a、はページiが格納される
スロットのアドレスである。また、履歴ファイル50に
は、前述のプロセス完了ジャーナル40や、メツセージ
・ジャーナル、システム管理情報更新ジャーナル等、デ
ータベース更新以外の履歴情報が取得される。上記の他
に。
システム動作中には、バックアップ版ページ・テーブル
10のコピイと、有効ブロック・ビットマップ30のコ
ピイと、カレント版ページ・テーブルとがメモリ70内
に存在する。ここでカレント版ページ・テーブル100
は、実行中トランザクションが更新中のページの更新後
の内容を格納場所を示すものであり、これを説明する図
を第5図に示す。第5図において、btは実行中トラン
ザクションによるページiの更新後の内容を格納したス
ロットのアドレスである。
次にシステム動作について説明する。システム動作を通
常時動作、システム障害時動作、トランザクション障害
時動作に分けて述べる。
(1)通常時動作 トランザクションの実行開始から終了までの本発明にか
かわる処理は(a)〜(f)の順序で行われる。
(・)実行中のぺ一宕読みこみ カレント版ページ・テーブル100の当該ページのエン
トリbI をサーチする。 bt =nullなら、バ
ックアップ版ページ・テーブルlo上の当該ページのエ
ントリa1の示すスロット・アドレスを求め、ページを
読みこむ。
これは該トランザクションにおいて当該ページを初めて
参照しこれを読みこむ場合である(ただし、相異なるト
ランザクション間でメモリ内ページの引き継ぎを行う場
合、b1=nullでもページiがメモリ内に残ってい
れば読みこみ動作は不要である)。そしてb t =a
 tとする。b1≠nullなら、当該ページに既に該
トランザクションにおいて1@以上参照された筈であり
、bIの示すスロットからページiを読みこむ。後述す
るように、この場合一般にblとa、は一致しない。
(b)実行中のページi書き出し blとa+ が一致するかどうか調べる。b。
=aIなら、ページiを該トランザクションにおいて初
めてデータベースに書き出す場合である。このとき、バ
ックアップ版ページ・テーブルに登録されていない未使
用スロットを見つけ、そのスロット・アドレスをbt 
に設定し、さらにそのスロットにページiを書き出す。
この結果b1≠atとなる。なお、ページを新しく書き
出すスロットのため、データベース領域はある程度余裕
を持たせて確保する必要がある。
b If−a Iなら、ページiは該トランザクション
において既に1回以上データベースに書き出されている
。したがって、bIの示すスロットにページ1ttlF
き出す。
(C)コミット命令発行時の更新ページ書き出し前項(
b)は、メモリ内のデータベース・ページ格納領域があ
ふれた場合などに実行される処理である。本項は、トラ
ンザクションで実行中のプログラムから実行完了を表わ
すコミット命令が発行された時、該トランザクションで
更新した全てのページをデータベースに書き出す処理で
ある。内容は、前項(b)の処理を各ページについて実
行することに他ならない。なお、本処理実行中にシステ
ム障害が生じたとき、該トランザクションは処理未完了
とみなし、データベース更新結果は保証しない。
(d)バックアップ版ページ・テーブル更新前項(c)
が終了すると、該トランザクションによる更新ページの
全てについて、カレント版ページ・テーブル100の該
当するエントリの内容をメモリ内のバックアップ版ペー
ジ・テーブルのコピイ上の対応エントリにコピイする。
そして、バックアップ版ページ・テーブル・コピイの中
で、内容の変わった全てのブロックをデータベース制御
情報領域80内のバックアップ版ページ・テーブル用ブ
ロック群20に出力する。その際、同一ブロック番号の
一対のブロックのうち、有効ブロック・ビットマップ3
0で無効とされている方のブロックに書き出してこれを
更新する。
さらに、br ==null (iは該トランザクショ
ンの更新ページ)とし、カレント版ページ・テーブル1
00のコピイ済エントリを無効にする。なお、本処理実
行中にシステム障害が生じたとき、該トランザクション
は処理未完了とみなし、データベース更新結果は保証し
ない。
(c)プロセス完了ジャーナル取得 前項(d)が終了すると、トランザクションの処理が完
了した旨を告げるプロセス完了ジャーナル40を履歴フ
ァイル50上に取得する。すなわち、プロセス完了ジャ
ーナルであることを示すコード46と、トランザクショ
ン番号42と、さらに該トランザクションによって更新
された全てのページについて。
そのページを含むバックアップ版ページ・テーブルのブ
ロック番号44をV、録する。本処理が完了した時点で
、該トランザクションは処理完了とみなし2以後そのデ
ータベース更新結果、メツセージ、システム管理情報更
新結果は全て保証される。なお、該トランザクションに
関するメツセージ・ジャーナル、システム管理情報更新
ジャーナルは、当該プロセス完了ジャーナル取得以前に
履歴ファイル50上に取得する。
(f)前項(a)が終了すると、(d)で更新したバッ
クアップ版ページ・テーブルのブロックの全てのブロッ
ク番号に対応する。有効ブロック・ビットマップ3o上
のビットを反転する。このとき、データベース制御情報
領域80への有効ブロック・ビットマップ30の書き出
しに際して、これに対加された更新トランザクション番
号のエントリ32に該トランザクションの番号を書きこ
む。
(2)システム障害時動作 電源断等のシステム障害が発生した時の処理を以下に述
べる。下記(a)〜(c)の処理実行後、システムはメ
モリ内のバックアップ版ページ・テーブルにもとづいて
必要なページを読みこみ、通常処理を開始する。
(a)データベース制御情報の読みこみデータベースの
制御情報領域80から有効ブロック・ビットマップ30
を読みこみ、これにもとづいてバックアップ版ページ・
テーブル10を読みこむ。
(b)トランザクションの状態解析 履歴ファイル50を読み、システム障害発生時の各トラ
ンザクションの状態を解析する。
とりつる状態として、(i)処理途中の状態、(it)
内部処理完了状態、(in)完了状態。
の三つがある。解析の概略フローを第6図に示す。すな
わち、成るトランザクションについて、そのプロセス完
了ジャーナルが取得されていないとき、状態(i)とな
る。プロセス完了ジャーナルが取得されており、有効ブ
ロック・ビット・マツプの更新トランザクション番号3
2が該トランザクションの番号に等しくなく、かつ、3
2に対応するトランザクションのプロセス完了ジャーナ
ルが該トランザクションのプロセス完了ジャーナルより
履歴ファイル5o上で前に取得されているとき、状態(
…)となる。これ以外のとき状態(in)となる。
(c)回復処理 トランザクションの状態に応じて1回復処理を行う。
(1)処理途中の状態 該トランザクションによる全ての処理は無効である。該
トランザクションによる更新ページがデータベース領域
90内のスロットに書きだされている可能性はあるが、
これは未だバックアップ版ページ・テーブル10に反映
されていないため、データベース回復処理は不要である
。なお、メツセージおよびシステム管理情報更新の無効
化は、履歴ファイル50を解析することにより公知の方
法で行う。
(i)内部処理完了状態 該トランザクションによる全ての処理は有効である1本
状態は有効ブロック・ビットマップ30の更新が未完了
なため、該トランザクションによるデータベース更新結
果が未だ有効化されていない過渡的な状態である。した
がって、該トランザクションのプロセス完了ジャーナル
40内のバックアップ版ページ・テーブル更新ブロック
番号44を読み、これに対応するビットを有効ブロック
・ビットマップ30上で反転し。
更新トランザクション番号のエントリ32に該トランザ
クションの番号を書きこむ。
なお、本状態をとるトランザクションが存在する確率は
低いが、たまたまこれが複数存在するときは、プロセス
完了ジャーナルを取得した順に上記処理を行う。また、
メツセージおよびシステム管理情報更新の回復は、履歴
ファイル50を解析することにより公知の方法で行う。
(i)完了状態 該トランザクションによる全ての処理は有効である。該
トランザクションのデータベース更新結果は既に有効化
されており。
データベース回復処理は不要である。メツセージおよび
システム管理情報更新の回復は、履歴ファイル50を解
析することにより公知の方法で行う。
(3)トランザクション障害時動作 トランザクション障害としては、プロセス完了ジャーナ
ル40取得以前にプログラム・エラー等により発生する
障害と、プロセス完了ジャーナル取得後に有効ブロック
・ビットマップ30書き出し中に入出力エラー等により
発生する障害とがある。前者の場合、該トランザクショ
ンの処理は無効であり、後者の場合は有効である。いず
れの場合にも、メツセージやメモリ内システム管理情報
更新の有効化/無効化は履歴ファイル50にもとづいて
公知の方法で行う。
以下、データベースの回復について(a)、(b)に述
べる。
(a)プロセス完了ジャーナル取得以前の障害該トラン
ザクションの全ての更新ページについて、カレント版ペ
ージ・テーブルの対応エントリをnullとする。すな
わちb* =null(iは該トランザクションの更新
ページ)。
(なお、相異なるトランザクション間でメモリ内ページ
の引継ぎを行う場合は、該トランザクションによる更新
前の情報をメモリ内に残しておき、それを用いてページ
iの内容を該トランザクション実行開始時点の内容に戻
す必要がある。) (b)プロセス完了ジャーナル取得以後の障害前述のシ
ステム障害時動作の(c) (i)に準じて回復処理を
行う。
以上述べたように本実施例によれば、シャドウ・ページ
方式の二つの問題点を解決することができる。第一に、
バックアップ版ページ・テーブル10、有効ブロック・
ビットマップ30、カレント版ページ・テーブル100
を用いて、複数のトランザクションが同時にデータベー
スを共用していても、実行完了トランザクションのデー
タベース更新結果のみを有効化することができる。なお
、このデータベース更新結果の有効化操作は有効ブロッ
ク・ビットマップ30のデータベース制御情報領域80
への書き出しにより実行されるが、これを実行中にシス
テム/トランザクション障害が発生しても、プロセス完
了ジャーナル40中のバックアップ版ページ・テーブル
更新ブロック番号44と有効ブロック・ビットマップに
付加されたその更新トランザクション番号32とを用い
て、有効ブロック・ビットマップを修正し、データベー
ス更新結果の有効化を完遂できる。したがって、履歴フ
ァイル50上にプロセス完了ジャーナル40を取得した
トランザクションについてはそのデータベース更新、メ
モリ内システム管理情報更新、メツセージを有効化し、
プロセス完了ジャーナルを未取得のトランザクションに
ついては、これらの処理を全て無効にすることができろ
、すなわち、成るトランザクションに関するデータベー
ス更新、メモリ内システム管理情報更新、メツセージの
同期的有効化/無効化が実現でき、第二の問題点も解決
できる。
以上一対のバックアップ版ページテーブルの場合につい
て説明したが、本発明は一般に複数のバックアップ版ペ
ージテーブルを管理使用して多様なバックアップを可能
とするものである。
以上の説明において不揮発性記憶装置としてIC不揮発
メモリ等の高速ランダムアクセス記憶装置またはいわゆ
るICディスク等を適用した場合の効果は大きい。
また、障害ページが生じたときの回復を行う実施例につ
いて詳述したが本発明は障害時の回復に限らず、データ
ベースの更新履歴を伴うプロセス一般に適用可能であり
、このときのバックアップ版ページテーブルは揮発性記
憶装置に格納してもよい。
(発明の効果〕 本発明によれば、複数のオンライン・トランザクション
が同時にデータベースを更新し、端末とメツセージを送
受信するオンライン・データベース・システムにおいて
、シャドウ・ページ方式を用いることが可能となる。従
来、このようなシステムでは、シャドウ・ページ方式で
なく、データベース更新履歴情報を取得し、システム/
トランザクション障害の時などにはこれを用いて回復す
る方式が広く採用されている。この従来方式と比較する
と、本発明により履歴情報取得量が削減できる。下記に
代表的事例について定量的な効果の見積の一例を示す。
(1)前提条件 ・データベースミニ400Mバイト ・データベース、ページ、サイズ=4にバイト・ページ
あたりの変更量: 100バイト・バックアップ版ペー
ジ、テーブルの、ページあたりエントリ・サイズ:16
バイト 、バックアップ版ページ、テーブルの、ブロック・サイ
ズ=IKバイト (2)履歴情報取得量削減効果 データベースの1ページあたりの更新履歴情報取得量を
比較する。
従来方式では、変更前と変更後の情報を取得するので、
取得量は201(=100寧2)バイトとなる。
一方本発明では、変更したページを含むバックアップ版
ページ・テーブルのブロックの番号のみを取得すればよ
い。いま、バックアップ版ページ・テーブルのサイズは
、 16拳 (400傘10”/4) =1600にバイト
なので、バックアップ版ページ・テーブルの相異なるブ
ロックの総数は1600 (=1600に/ I K)
個となる。これを識別するためには2バイトあれば十分
である。すなわち1ページあたりの更新履歴情報取得量
を1. / 100に削減できる。
なお、ひとつのトランザクションが複数のページを更新
したとき、これらのページがバックアップ版ページ・テ
ーブル上で同一のブロックに含まれるならば、削減効果
は更に増大する。
また、バックアップ版ページテーブルを高速不揮発メモ
リ(半導体)やICディスクに格納することにより、総
合的には一層高速となる。
【図面の簡単な説明】
第1図は本発明の特徴的構成を表わす説明図、第2図は
環境システムの全体構成図、第3図は本発明データベー
スの構成図である。第4図、第5図はそれぞれ本発明バ
ックアップ版ページ・テーブル、カレント版ページ・テ
ーブルのテーブル構成図、第6図は1本発明システム障
害回復時のトランザクション状態解析フロー図である。 10・・・バックアップ版ページ・テーブル、20・・
・バックアップ版ページ・テーブル用ブロック群、30
・・・有効ブロック・ビットマップ、32・・・更新ト
ランザクション番号、40・・・プロセス完了ジャーナ
ル、42・・・処理完了トランザクション番号、44・
・・バックアップ版ページ・テーブル更新ブロック番号
、46・・・プロセス完了ジャーナル・コード、50・
・・履歴ファイル、60・・・データベース。 70・・・CPU/メモリ、80・・・データベース制
御情報領域、90・・・データベース領域、100・・
・カレント版ページ・テーブル。

Claims (1)

  1. 【特許請求の範囲】 1、データが格納される複数のページから構成されるデ
    ータベースと、該データベースの各ページとその障害時
    に回復すべきページ内容を格納したスロットとの対応を
    与えるための1組のバックアップ版ページ・テーブルと
    、該バックアップ版ページ・テーブルを構成する各ブロ
    ックについて上記1組のブロックのうちいずれが有効か
    を示す有効ブロック・マップと、トランザクションによ
    り更新中のページとその更新後内容を格納したスロット
    との対応を与えるカレント版ページ・テーブルとを有し
    、有効なバックアップ版ページ・テーブルに登録済のス
    ロット以外の未使用スロットを見出して更新したページ
    の更新後内容を格納することを特徴とするデータベース
    更新方法。 2、上記1組のバックアップ版ページテーブルが1対で
    ある第1項記載のデータベース更新方法。 3、実行中のトランザクションが端末メッセージを送受
    信したメモリ内のシステム管理情報を更新する場合は履
    歴ファイルにその内容を表わす履歴レコードを取得する
    第1項記載のデータベース更新方法。 4、上記未使用のスロットをカレント版ページテーブル
    に登録し、トランザクションの実行完了時には、該トラ
    ンザクションにより更新した全てのページをカレント版
    ページ・テーブルより抽出し、更新後内容を格納したス
    ロットをバックアップ版ページ・テーブルに登録する第
    1項記載のデータベース更新方法。 5、上記登録するバックアップ版ページ・テーブルの各
    ブロックについて一組のブロックのうち有効ブロック・
    マップで無効とされている方のブロックを更新する第4
    項記載のデータベース更新方法。 6、トランザクション処理完了を示す履歴レコードを履
    歴ファイルに取得し、更新した全てのバックアップ版ペ
    ージ・テーブルのブロック番号を該レコードに付加する
    第1項記載のデータベース更新方法。 7、上記有効ブロック・マップにおいて該ブロックに対
    応するコードを変更し、該トランザクション番号を該有
    効ブロック・マップに付加する第5項記載のデータベー
    ス更新方法。 8、システム障害発生時に、トランザクションの処理完
    了を表わす上記履歴レコードが取得されているトランザ
    クションについて、その端末メッセージの回復およびメ
    モリ上のシステム管理情報の回復を行うとともに不揮発
    性媒体上の有効ブロック・マップとバックアップ版ペー
    ジ・テーブルとを用いてデータベースの回復を行う第3
    項記載のデータベース更新方法。 9、未だ有効ブロック・マップ更新が完了していないト
    ランザクションについては、処理完了を表わす履歴レコ
    ード中のブロック番号に対応するコードを有効ブロック
    ・マップ上で変更した後にデータベース回復を行う第5
    項記載のデータベース更新方法。 10、データが格納される複数のページから構成される
    データベースと、該データベースの各ページとその障害
    時に回復すべきページ内容を格納したスロットとの対応
    を与えるための1対のバックアップ版ページ・テーブル
    を記憶した不揮発性メモリと、該バックアップ版ページ
    ・テーブルを構成する各ブロックについて1対のブロッ
    クのうちいずれが有効かを示す有効ブロック・ビットマ
    ップと、トランザクションにより更新中のページとその
    更新後内容を格納したスロットとの対応を与えるカレン
    ト版ページ・テーブルと、トランザクションによるデー
    タベース更新履歴以外の履歴情報を記録する履歴ファイ
    ルと、有効なバックアップ版ページ・テーブルに登録済
    のスロット以外の未使用スロットを見出して更新したペ
    ージの更新後内容格納する手段を有することを特徴とす
    るデータベース更新装置。
JP61079916A 1986-04-09 1986-04-09 デ−タベ−ス更新方法および装置 Expired - Fee Related JPH0823840B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61079916A JPH0823840B2 (ja) 1986-04-09 1986-04-09 デ−タベ−ス更新方法および装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61079916A JPH0823840B2 (ja) 1986-04-09 1986-04-09 デ−タベ−ス更新方法および装置

Publications (2)

Publication Number Publication Date
JPS62237539A true JPS62237539A (ja) 1987-10-17
JPH0823840B2 JPH0823840B2 (ja) 1996-03-06

Family

ID=13703618

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61079916A Expired - Fee Related JPH0823840B2 (ja) 1986-04-09 1986-04-09 デ−タベ−ス更新方法および装置

Country Status (1)

Country Link
JP (1) JPH0823840B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0540682A (ja) * 1990-06-08 1993-02-19 Internatl Business Mach Corp <Ibm> アトミシテイを有する記憶装置の高可用性耐故障再配置
US5664186A (en) * 1992-05-21 1997-09-02 International Business Machines Corporation Computer file management and backup system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS582937A (ja) * 1981-06-27 1983-01-08 Fujitsu Ltd 障害回復方式

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS582937A (ja) * 1981-06-27 1983-01-08 Fujitsu Ltd 障害回復方式

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0540682A (ja) * 1990-06-08 1993-02-19 Internatl Business Mach Corp <Ibm> アトミシテイを有する記憶装置の高可用性耐故障再配置
US5664186A (en) * 1992-05-21 1997-09-02 International Business Machines Corporation Computer file management and backup system

Also Published As

Publication number Publication date
JPH0823840B2 (ja) 1996-03-06

Similar Documents

Publication Publication Date Title
JP2718031B2 (ja) 履歴情報取得方法
US5043871A (en) Method and apparatus for database update/recovery
US4961134A (en) Method for minimizing locking and reading in a segmented storage space
US5724581A (en) Data base management system for recovering from an abnormal condition
US5386554A (en) Method and apparatus for reducing data locking time by removing a lock when journal data is written into a main memory journal queue
JPH1097451A (ja) クライアント/サーバ計算機システムにおけるログ・ファイルの最適化方法及び装置
US20100169289A1 (en) Two Phase Commit With Grid Elements
CN101515276A (zh) 一种文件数据写操作的方法、文件数据恢复方法及系统
CN111414320B (zh) 基于日志文件系统的非易失内存构建磁盘cache的方法及系统
CN111291022B (zh) 一种基于区块链的数据存储系统
WO2006095356A1 (en) A method of logging transactions and a method of reversing a transaction
JPH02234242A (ja) 部分書込み制御装置
CN117472647A (zh) 一种数据库事务回滚方法及装置
JPH06149485A (ja) データ完結性保証処理方法
JPH0816881B2 (ja) データベース更新方法
JPS62237539A (ja) デ−タベ−ス更新方法および装置
WO2022033269A1 (zh) 数据处理的方法、设备及系统
JPS62224843A (ja) デ−タベ−ス媒体内容保全方式
JPH033046A (ja) ログ記録管理方式
JP2001229063A (ja) データ管理システム
JPS63133240A (ja) 常駐テ−ブルの内容保証方式
CN109271277A (zh) 数据库宕机后的访问方法、装置和系统
CN110399098A (zh) 一种数据处理方法及电子设备
JPS63132351A (ja) メモリデ−タベ−ス処理装置
JPS62297948A (ja) デ−タベ−スの障害回復方式

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees