JPH0540681A - データベースの前進復旧方式 - Google Patents

データベースの前進復旧方式

Info

Publication number
JPH0540681A
JPH0540681A JP3197589A JP19758991A JPH0540681A JP H0540681 A JPH0540681 A JP H0540681A JP 3197589 A JP3197589 A JP 3197589A JP 19758991 A JP19758991 A JP 19758991A JP H0540681 A JPH0540681 A JP H0540681A
Authority
JP
Japan
Prior art keywords
history
update
block
execution unit
update history
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
JP3197589A
Other languages
English (en)
Inventor
Masahiko Kamioka
晶彦 神岡
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 Solution Innovators Ltd
Original Assignee
NEC Solution Innovators 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 NEC Solution Innovators Ltd filed Critical NEC Solution Innovators Ltd
Priority to JP3197589A priority Critical patent/JPH0540681A/ja
Publication of JPH0540681A publication Critical patent/JPH0540681A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【目的】 不要な更新後履歴を廃棄する処理を省いて前
進復旧の処理を高速化する。 【構成】 データベースの前進復旧を行う際に、更新前
履歴出力手段5は、前進復旧による更新の更新前履歴を
採取して、更新前履歴ブロックを形成し更新前履歴作業
ファイル10に格納する。この時、更新前履歴ブロック
アドレス格納手段6は、同一アクティビティの更新前履
歴ブロック間にチェーンを張る。履歴レコード判定手段
2が更新書き戻し点履歴レコードを検出した時、更新前
履歴復旧手段7は、書き戻すべきアクティビティの更新
前履歴ブロックを、チェーンをたどって順次読み込み、
データベースを書き戻す。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データベースシステム
の前進復旧方式に関する。
【0002】
【従来の技術】従来行われていたデータベースの前進復
旧方式は以下のようである。
【0003】最初に、更新後履歴ファイルから更新後履
歴を読み込み、作業ファイルに格納してゆく。更新確定
点を検出した場合には、更新確定点によって有効となる
更新後履歴を用いてデータベースを更新する。このため
には、作業ファイルから更新後履歴を読み込んで、更新
確定点と同じ実行単位名の履歴のみを用いてデータベー
スの更新を行い、該当しない履歴は作業ファイルに書き
戻す。
【0004】次に、書き戻し点を検出した場合には、書
き戻し点によって無効となる更新後履歴を削除する。こ
のためには、作業ファイルから更新後履歴を読み込ん
で、書き戻し点とは異なった実行単位名の更新後履歴の
みを作業ファイルに書き戻す。
【0005】
【発明が解決しようとする課題】上述した従来のデータ
ベースの前進復旧方式では、読み込まれた更新後履歴を
作業ファイルに格納しておき、書き戻し点を検出した場
合には書き戻し点によって無効となる更新後履歴を作業
ファイルから選別し、更新確定点を検出した場合には更
新確定点によって有効となる更新後履歴を作業ファイル
から選別する必要がある。このため、それらの処理に長
時間がかかり、復旧の速度が遅くなるとい欠点がある。
【0006】また、更新後履歴を用いてデータベースを
更新するときに、更新確定点履歴レコード、ならびに書
き戻し点履歴レコードに対する処理を行う場合に、作業
ファイルから読み混まれた履歴を書き戻さなければなら
ないので、処理が複雑になりファイルのI/Oが増加す
るため、処理速度が遅くなるという欠点がある。
【0007】本発明の目的は、上記欠点を除去し、処理
時間を短縮できるように構成したデータベースの前進復
旧方式を提供することにある。
【0008】
【課題を解決するための手段】本発明によるデータベー
スの前進復旧方式は、電子計算機のデータベースの更新
時に、更新後の履歴を採取して更新後履歴レコードと
し、更新後履歴ブロックを形成して更新後履歴ファイル
に蓄積しておくデータベースの前進復旧方式において、
更新後履歴読み込み手段と、履歴レコード判定手段と、
実行単位識別番号格納手段と、データベース更新手段
と、更新前履歴出力手段と、更新前履歴ブロックアドレ
ス格納手段と、更新前履歴復旧手段とを具備して構成し
たものである。
【0009】更新後履歴読み込み手段は、更新後履歴フ
ァイルから更新後利歴ブロックを読み込むためのもので
ある。
【0010】履歴レコード判定手段は、読み込まれた更
新後履歴ブロックに格納されている更新後履歴レコード
が、更新後イメージを格納している更新後イメージ履歴
レコードであるか、データベースへの更新を確定する更
新確定点の履歴である更新確定点履歴レコードである
か、あるいは後戻り復旧を行った履歴である書き戻し点
履歴レコードであるかを判定するためのものである。
【0011】実行単位識別番号格納手段は、読み込まれ
た更新後履歴ブロックにある電子計算機の実行単位に一
意に付けられている実行単位識別番号を、実行単位識別
番号と更新前履歴ブロックのアドレスとを対にして保持
する実行単位情報テーブルに格納するためのものであ
る。
【0012】データベース更新手段は、更新後履歴をも
とにしてデータベースを更新するためのものである。
【0013】更新前履歴出力手段は、データベースの更
新手段によってデータベースを更新した時に、更新前の
イメージを採取して更新前履歴レーコードとし、さらに
更新前履歴ブロックを形成してその更新前履歴ブロック
より一つ前に出力した同一の実行単位名の更新前履歴ブ
ロックのアドレスを更新前履歴ブロックに格納して更新
前履歴作業ファイルに出力するためのものである。
【0014】更新前履歴ブロックアドレス格納手段は、
更新前履歴を用いてデータベースを前進復旧による更新
の前の状態に書き戻す処理で最初に使用される更新前履
歴ブロックのアドレスを実行単位識別番号別に実行単位
情報テーブルに格納するためのものである。
【0015】更新前履歴復旧手段は、実行単位識別番号
と格納手段によって実行単位情報テーブルに格納されて
いる実行単位識別番号と更新前履歴ブロックアドレス格
納手段によって実行単位情報テーブルに格納されている
更新前履歴ブロックアドレスと更新前履歴出力手段によ
って更新前履歴ブロックい格納されているその更新前履
歴ブロックより一つ前に出力した同一実行単位の更新前
履歴ブロックのアドレクとを参照し、更新前履歴を用い
てデータベースを前進復旧による更新の前の状態に書き
戻すためのものである。
【0016】
【実施例】次に、本発明について図面を参照して詳細に
説明する。
【0017】図1は、本発明によるデータベースの前進
復旧方式の一実施例の構成を示すブロック図である。
【0018】図1において、本発明は更新後履歴読み込
み手段1と、履歴レコード判定手段2と、実行単位識別
番号格納手段3と、データベース更新手段4と、更新前
履歴出力手段5と、更新前履歴ブロックアドレス格納手
段6と、更新前履歴復旧手段7と、更新後履歴ファイル
8と、データベースファイル9と、更新前履歴作業ファ
イル10とから構成されている。
【0019】更新前履歴ファイル8には、更新後履歴ブ
ロックが出力されている。更新後履歴ブロックには、実
行単位識別番号と一個以上の更新後履歴レコードとが格
納されている。更新後履歴レコードには、更新後イメー
ジを格納するための更新後イメージ履歴レコードと、更
新確定点を示す更新確定点履歴レコードと、書き戻し点
を示す書き戻し点履歴レコードとがある。
【0020】実行単位識別番号と、更新前履歴を用いて
データベースを前進復旧による更新の前の状態に書き戻
す処理で最初に使用される更新前履歴ブロックアドレス
とを対にして格納するために、実行単位情報テーブルを
設ける。更新後履歴ブロックを読み込むために、バッフ
ァを設ける。バッファは、複数個のブロックを読み込め
るように準備されている。
【0021】更新後履歴読み込み手段1は、更新後履歴
ファイル8から更新後履歴ブロックをバッファに読み込
むためのものである。履歴レコード判定手段2は、読み
込まれた更新後履歴ブロックに格納されている更新後履
歴レコードの種類を判定するためのものである。実行単
位識別番号が、実行単位情報テーブルに格納されていな
いものである場合に、その実行単位識別番号を格納する
ためのものである。
【0022】データベース更新手段4は、更新後履歴を
もとにデータベース9を更新するためのものである。更
新前履歴出力手段5は、データベース更新手段4によっ
てデータベース9が更新される時に、その更新前履歴を
採取し更新前履歴ブロックを形成してその更新前履歴ブ
ロックのアドレスを更新前履歴ブロックに格納して更新
前履歴作業ファイルに出力するためのものである。
【0023】更新前履歴ブロックアドレス格納手段6
は、更新前履歴を用いてデータベース9を前進復旧によ
る更新の前の状態に書き戻す処理で最初に使用される更
新前履歴ブロックのアドレスを実行単位情報テーブルに
実行単位識別番号に格納するためのものである。更新前
履歴復旧手段7は、格納されている実行単位識別番号と
更新前履歴ブロックアドレスとを参照し、更新前履歴作
業ファイルの更新前履歴を用いて、データベース9を前
進復旧による更新の前の状態に書き戻すためのものであ
る。
【0024】図2は、更新後履歴、および更新前履歴の
処理に用いるブロックとレコードの概要を示す説明図で
ある。更新後履歴ブロック200は、図(A)に示すと
おり、実行単位識別番号201と、一個以上の更新後履
歴レコード202とから成る。
【0025】更新後履歴レコード202は、更新後イメ
ージ履歴レコード203と、更新確定点履歴レコード
と、書き戻し点履歴レコードの各種類がある。更新後イ
メージ履歴レコード203は、図2(B)に示すよう
に、更新後イメージの位置等の情報204と、更新後イ
メージ205とから成る。更新確定点履歴レコードに
は、更新確定点利?レコードであることを示す情報が入
っており、書き戻し点履歴レコードには、書き戻し点履
歴レコードであることを示す情報が入っている。
【0026】更新前履歴ブロック210は、図2(C)
に示すとおり、実行単位識別番号211と、一つ前の更
新前履歴ブロックのアドレス212と、一個以上の更新
前履歴レコード213とから成る。
【0027】更新前履歴213は、図2(D)に示すよ
うに、更新前履歴イメージの位置等の情報214と、更
新前イメージ215とから成る。
【0028】図3は、図1に示す更新後履歴ファイル8
の一例を示す説明図である。
【0029】図3において、更新後履歴ファイル300
に、更新後履歴ブロック301から更新後履歴ブロック
316までが出力されている。出力されているすべての
更新後履歴ブロック301〜316には、実行単位の識
別番号を表すA,B,C,Dのうち、それぞれの更新後
履歴ブロックを出力した実行単位の識別番号が格納され
ている。
【0030】図4および図5は、図3に示す更新後履歴
ファイル300の動作を示す説明図であり、前進復旧処
理時の、バッファと実行単位情報テーブルと更新前履歴
作業ファイルとの状況を表す。図4と図5を参照して本
実施例の処理の詳細な流れを説明する。
【0031】図3を参照すると、更新後履歴ブロック3
05は更新確定点履歴レコード一個から成るブロック
で、更新後履歴ブロック316は最後尾に書き戻し点履
歴レコーが格納されているブロックである。他のレコー
ドは、すべて更新後イメージ履歴レコードである。
【0032】まず最初に、更新後履歴読み込み手段1
は、更新後履歴ファイル300から更新後履歴ブロック
301をバッファに読み込む。次に、履歴レコード判定
手段2は、読み込まれたブロックにあるレコードの種類
を判定する。上記レコードは更新後イメージ履歴レコー
ドであるので、実行単位識別番号格納手段3は、読み込
まれた更新後履歴ブロックの実行単位識別番号と、ブロ
ックアドレスとはなり得ない値0とを実行単位情報テー
ブルに格納する。更新後履歴ブロック304まで読み込
むと、バッファと実行単位情報テーブルと更新前履歴作
業ファイルとの状況は、図4(A)のようになる。
【0033】次に、更新後履歴読み込み手段1は更新後
履歴ブロック305をバッファに読み込み、履歴レコー
ド判定手段2が、更新確定点履歴レコードを識別する
と、データベース9を更新する。このとき、更新確定点
履歴レコードのあるブロックの実行単位識別番号がBで
あるので、実行単位識別番号Bを実行単位情報テーブル
から削除する。更新前履歴出力手段5は、更新確定点履
歴レコードのあるブロックの実行単位識別番号であるB
以外の実行単位についてのみ更新前履歴を採取し、更新
前履歴ブロックを形成して更新前履歴作業ファイル10
へ格納する。
【0034】上記更新前履歴ブロックには、一つ前に出
力した同一実行単位の更新前履歴ブロックのアドレスを
格納する。もし、更新前履歴ブロックを一つも出力して
いないか、または、一つ前に出力した更新前履歴ブロッ
クが後戻り復旧で使用されないものであるならば、ブロ
ックアドレスとはなり得ない値0を格納する。一つ前に
出力した同一実行単位の更新前履歴ブロックが後戻り復
旧で使用されないかどうかは、実行単位情報テーブルに
格納されている該当実行単位のブロックアドレスの値が
であるかどうかで判断する。
【0035】更新前履歴ブロックアドレス格納手段6
は、更新前履歴ブロックが出力されるたびに、出力した
更新前履歴ブロックの出力アドレスを、実行単位ごとに
実行単位情報テーブルに格納する。更新前履歴ブロック
の出力アドレスを格納する実行単位情報テーブルの領域
は、該当する実行単位の更新前履歴ブロックが1個出力
される度に塗りかえられていき、最終的には更新前履歴
復旧手段7による後戻り復旧で最初に使用する更新前履
歴ブロックのアドレスが格納される。するとバッファと
実行単位情報テーブルと更新前履歴作業ファイルとの状
況は、図4(B)のようになる。図4の更新前履歴作業
ファイルの左側の数字は更新前履歴ブロックのアドレス
である。
【0036】更新後履歴読み込み手段1が更新後履歴ブ
ロック313まで読み込むと、バッファと実行単位情報
テーブルと更新前履歴作業ファイルとの状況は、図4
(C)のようになる。
【0037】次に、更新後履歴読み込み手段1が更新後
履歴ブロック314を読み込もうとした時、バッファが
オーバーフローしたならばデータベース更新手段4は、
格納している更新後履歴ブロックを用いてデータベース
を更新する。更新前履歴出力手段5は、更新前履歴を採
取し、更新前履歴ロックを形成して更新前履歴作業ファ
イル10へ格納する。
【0038】上記更新前履歴ブロックには、一つ前に出
力した同一の実行単位の更新前履歴ブロックのアドレス
を格納する。もし、更新前履歴ブロックを一つも出力し
ていないか、または、一つ前に出力した更新前履歴ブロ
ックが後戻り復旧で使用されないものであるならば、ブ
ロックアドレスとはなり得ない値0を格納する。一つ前
に出力した同一実行単位の更新前履歴ブロックが後戻り
復旧で使用されないかどうかは、実行単位情報テーブル
に格納されている該当実行単位のブロックアドレスの値
が0であるかどうかで判断する。
【0039】更新前履歴ブロックアドレス格納手段6
は、更新前履歴ブロックが出力されるたびに、出力した
更新前履歴ブロックの出力アドレスを、実行単位ごとに
実行単位情報テーブルに格納する。更新前履歴ブロック
の出力アドレスを格納する実行単位情報テーブルの領域
は、該当する実行単位の更新前履歴ブロックが1個出力
される度に塗りかえられていき、最終的には更新前履歴
復旧手段7による後戻り復旧で最初に使用する更新前履
歴ブロックのアドレスが格納される。その後、更新後履
歴読み込み手段1は、更新後履歴ブロック314をバッ
ファに読み込む。するとバッファと実行単位情報テーブ
ルと更新前履歴作業ファイル10との状況は、図5
(A)のようになる。
【0040】更新後履歴読み込み手段1が更新後履歴ブ
ロック315まで読み込むと、バッファと実行単位情報
テーブルと更新前履歴作業ファイルとの状況は、図5
(B)のようになる。
【0041】次に、更新後履歴読み込み手段1が、更新
後履歴ブロック316をバッファに読み込み、履歴レコ
ード判定手段2が、書き戻し点履歴レコードを識別する
と、更新前履歴復旧手段7は、実行単位情報テーブルを
参照し、実行単位識別番号がCである実行単位の後戻り
復旧を行う際に最初に使用する更新前履歴ブロックのア
ドレスを参照して更新前履歴作業ファイル10から最初
に使用する更新前履歴ブロックを得、その後は更新前履
歴ブロックに格納されている一つ前に出力した更新前履
歴ブロックのアドレスによって順次更新前履歴ブロック
を得て後戻り復旧を行い、一つ前に出力した更新前履歴
ブロックのアドレスの値が0になったら終了する。
【0042】そして、実行単位情報テーブルの実行単位
識別番号Cと、バッファに格納されている更新後履歴ブ
ロックで実行単位識別番号がCのものとを削除する。バ
ッファと実行単位識別番号テーブルと更新前履歴作業フ
ァイルとの状況は、図5(C)のようになる。
【0043】
【発明の効果】以上説明したような構成を採用すること
により、本発明は、複数の実行単位が実行されている際
の前進復旧の速度が飛躍的に向上するという効果を有す
る。また、本発明により、I/O回数を減らすことがで
きるため、処理速度が改善されるという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例の構成を示す図である。
【図2】本発明で使用する更新後履歴ファイル、更新前
履歴ファイルで用いるブロックとレコードの概要を示
す。
【図3】図1に示す更新後履歴ファイルの一例を示す。
【図4】図1に示す実施例による処理を説明するための
図である。
【図5】図1に示す実施例による処理を説明するための
図である。
【符号の説明】
1 更新後履歴読み込み手段 2 履歴レコード判定手段 3 実行単位識別番号格納手段 4 データベース更新手段 5 更新前履歴出力手段 6 更新前履歴ブロックアドレス格納手段 7 更新前履歴復旧手段 8 更新後履歴ファイル 9 データベースファイル 10 更新前履歴作業ファイル

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 電子計算機のデータベースの更新時に更
    新後の履歴を採取して更新後履歴レコードとし、更新後
    履歴ブロックを形成して更新後履歴ファイルに蓄積して
    あるデータベースの前進復旧方式において、 更新後履歴ファイルから更新後履歴ブロックを読み込む
    ための更新後読み込み手段と、 前記読み込まれた更新後履歴ブロックに格納されている
    前記更新後履歴レコードが、更新後イメージを格納して
    いる更新後イメージ履歴レコードであるか、データベー
    スへの更新を確定する更新確定点の履歴である更新確定
    点履歴レコードであるか、あるいは後戻り復旧を行った
    履歴である書き戻し点履歴レコードであるかを判定する
    ための履歴レコード判定手段と、 前記読み込まれた更新後履歴ブロックにある電子計算機
    の実行単位に一意に付けられている実行単位識別番号
    を、実行単位識別番号と更新前履歴ブロックのアドレス
    とを対にして保持する実行単位情報テーブルに格納する
    ための実行単位識別番号格納手段と、 更新後履歴をもとにしてデータベースを更新するための
    データベース更新手段と、 前記データベース更新手段によってデータベースを更新
    する時に更新前のイメージを採取して更新前履歴レコー
    ドとし、さらに更新前履歴ブロックを形成しその更新前
    履歴ブロックより一つ前に出力した同一実行単位名の更
    新前履歴ブロックのアドレスを更新前履歴ブロックに格
    納して更新前履歴作業ファイルに出力するための更新前
    出力手段と、更新前履歴を用いてデータベースを前進復
    旧による更新の前の状態に書き戻す処理で最初に使用さ
    れる更新前履歴ブロックのアドレスを実行単位情報テー
    ブル実行単位識別番号別に格納するための更新前履歴ブ
    ロックアドレス格納手段と、 前記実行単位識別番号格納手段によって格納されている
    実行単位識別番号と前記更新前履歴ブロックアドレス格
    納手段によって格納されている更新前履歴ブロックアド
    レスと、前記更新前履歴出力手段によって更新前履歴ブ
    ロックに格納されているその更新前履歴出力手段によっ
    て更新前履歴ブロックに格納されているその更新前履歴
    ブロックより一つ前に出力した同一実行単位の更新前履
    歴ブロックのアドレスとを参照し、更新前履歴を用いて
    データベースを前進復旧による更新の前の状態に戻すた
    めの更新前履歴復旧手段とを具備して構成したことを特
    徴とするデータベースの前進復旧方式。
JP3197589A 1991-08-07 1991-08-07 データベースの前進復旧方式 Pending JPH0540681A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3197589A JPH0540681A (ja) 1991-08-07 1991-08-07 データベースの前進復旧方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3197589A JPH0540681A (ja) 1991-08-07 1991-08-07 データベースの前進復旧方式

Publications (1)

Publication Number Publication Date
JPH0540681A true JPH0540681A (ja) 1993-02-19

Family

ID=16377004

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3197589A Pending JPH0540681A (ja) 1991-08-07 1991-08-07 データベースの前進復旧方式

Country Status (1)

Country Link
JP (1) JPH0540681A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004348744A (ja) * 2003-05-22 2004-12-09 Microsoft Corp テーブルに対して行われる変更を識別する識別方法及びそのシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004348744A (ja) * 2003-05-22 2004-12-09 Microsoft Corp テーブルに対して行われる変更を識別する識別方法及びそのシステム

Similar Documents

Publication Publication Date Title
KR970002637A (ko) 멀티프로세서 시스템
JP6156517B2 (ja) 書き込み情報記憶装置、方法、及び、プログラム
JPH1139801A (ja) 情報記録方法
US20080162591A1 (en) Method of Logging Transactions and a Method of Reversing a Transaction
JPS5960667A (ja) 磁気テ−プジヤ−ナルの判別方法
JPH0827756B2 (ja) Icカード
JPH0540681A (ja) データベースの前進復旧方式
CN113064895B (zh) 一种图谱的增量更新方法、装置及系统
JPS6365544A (ja) デ−タ削除方式
JP2003122646A (ja) Icカードおよびicカードのメモリアクセス制御方法
CN113434084B (zh) 一种数据擦除方法、系统、设备以及介质
CN110515551A (zh) 一种处理主机io和垃圾回收的方法和装置
JP2708610B2 (ja) データベースのログ管理処理方式
JP2822869B2 (ja) ライブラリファイル管理装置
JPS5856142B2 (ja) オンライン回復制御方式
JP3130870B2 (ja) メモリダンプファイル再構成方式
JPH02301841A (ja) データベースの前進復旧方式
JPH05108444A (ja) ジヤーナル採取方式
JP2000172542A (ja) ファイルアクセス方式
JP2568708B2 (ja) ダブルリンクキュー更新方法
JP2616203B2 (ja) 翻訳システムにおける名標テーブルの管理方式
JPH0264749A (ja) ログデータの記録処理方式
JP2002278818A (ja) データ管理システム
JPH0262624A (ja) 磁気ディスク装置のvtoc復旧装置
JPH0287241A (ja) 障害回復方法