JPS63133240A - 常駐テ−ブルの内容保証方式 - Google Patents
常駐テ−ブルの内容保証方式Info
- Publication number
- JPS63133240A JPS63133240A JP61280039A JP28003986A JPS63133240A JP S63133240 A JPS63133240 A JP S63133240A JP 61280039 A JP61280039 A JP 61280039A JP 28003986 A JP28003986 A JP 28003986A JP S63133240 A JPS63133240 A JP S63133240A
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- resident
- updated
- contents
- storage medium
- 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
- 238000000034 method Methods 0.000 claims abstract description 54
- 238000011084 recovery Methods 0.000 claims description 47
- 238000012545 processing Methods 0.000 claims description 35
- 230000010365 information processing Effects 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 12
- 230000000694 effects Effects 0.000 description 5
- 230000007423 decrease Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は情報処理システムにおいて、システム立上げ時
等に主記憶内等に設けられる常駐領域である、いわゆる
常駐テーブルの内容保証方式に関し、特に常駐テーブル
の内容保証のオーバヘッド削減とシステム障害時の常駐
テーブル回復時間の大幅な短縮を可能とした常駐テーブ
ルの内容保証方式に関する。
等に主記憶内等に設けられる常駐領域である、いわゆる
常駐テーブルの内容保証方式に関し、特に常駐テーブル
の内容保証のオーバヘッド削減とシステム障害時の常駐
テーブル回復時間の大幅な短縮を可能とした常駐テーブ
ルの内容保証方式に関する。
従来から、システム障害が発生した場合、システム開始
時からの回復を行わず、システムの論理的一貫性を保証
するため、周期的にチェックポイントを設け、チェック
ポイント時にメモリ内容を不揮発記憶媒体に記録するこ
とが、広く行われている。
時からの回復を行わず、システムの論理的一貫性を保証
するため、周期的にチェックポイントを設け、チェック
ポイント時にメモリ内容を不揮発記憶媒体に記録するこ
とが、広く行われている。
これに関しては、例えば、J、N、グレイ著;「ノーツ
オンデータベースオペレイティングシステムズ(197
8)J(Notes on Database Ope
ratingS ystems、○perating
Systems An AdvancedCou
rseの一章、Springer−Verlag、Ne
w York)に記載されている。
オンデータベースオペレイティングシステムズ(197
8)J(Notes on Database Ope
ratingS ystems、○perating
Systems An AdvancedCou
rseの一章、Springer−Verlag、Ne
w York)に記載されている。
この方式によれば、システム障害が発生した場合、上記
不揮発記憶媒体に格納した内容と履歴情報により、シス
テムの論理的一貫性を回復することが可能である。
不揮発記憶媒体に格納した内容と履歴情報により、シス
テムの論理的一貫性を回復することが可能である。
しかし、上記従来技術は、以下に述へる問題点を有する
ものであった。すなわち、 (1)チェックポイント時に、メモリ上の内容、つまり
、常駐テーブルの全内容を不揮発記憶媒体に取得するた
め、その書出し処理がボトルネックとなり、システム性
能を低下させる恐れがある。
ものであった。すなわち、 (1)チェックポイント時に、メモリ上の内容、つまり
、常駐テーブルの全内容を不揮発記憶媒体に取得するた
め、その書出し処理がボトルネックとなり、システム性
能を低下させる恐れがある。
(2)システム障害時の回復処理は、チェックポイント
時に取得した常駐テーブル内容を不揮発記憶媒体からメ
モリに読込んだ後、チェックポイント以降の履歴情報を
用いて内容の回復を行う。
時に取得した常駐テーブル内容を不揮発記憶媒体からメ
モリに読込んだ後、チェックポイント以降の履歴情報を
用いて内容の回復を行う。
チェックポイント間隔は、常駐テーブル内容を不揮発記
憶媒体に取得するのに要する時間より広くする必要があ
り、チェックポイント間隔は小さくできない。このため
、履歴情報の読込みと履歴情報を用いた常駐テーブル更
新処理に時間がかかる。更に、次のシステム障害に備え
るため、回復後の常駐テーブルの全内容を不揮発記憶媒
体に取得する。これらの処理のために回復時間が長びく
恐れがある。
憶媒体に取得するのに要する時間より広くする必要があ
り、チェックポイント間隔は小さくできない。このため
、履歴情報の読込みと履歴情報を用いた常駐テーブル更
新処理に時間がかかる。更に、次のシステム障害に備え
るため、回復後の常駐テーブルの全内容を不揮発記憶媒
体に取得する。これらの処理のために回復時間が長びく
恐れがある。
本発明は上記事情に鑑みてなされたもので、その目的と
するところは、従来の常駐テーブルの内容保証方式にお
ける上述の如き問題を解消し、チェックポイント時に常
駐テーブルの全内容を不揮発性媒体に取得する処理をな
くしてシステム性能を大幅しこ向上させるとともに、障
害発生時におけるシステム回復時間を大幅に減少させる
ようにして、全体の効率を向上させた常駐テーブルの内
容保証方式を提供することにある。
するところは、従来の常駐テーブルの内容保証方式にお
ける上述の如き問題を解消し、チェックポイント時に常
駐テーブルの全内容を不揮発性媒体に取得する処理をな
くしてシステム性能を大幅しこ向上させるとともに、障
害発生時におけるシステム回復時間を大幅に減少させる
ようにして、全体の効率を向上させた常駐テーブルの内
容保証方式を提供することにある。
本発明の上記目的は、第一には、メモリ内に常駐化させ
た常駐テーブルを使用したトランザクション処理を行う
情報処理システムにおいて、前記常駐テーブル群を任意
の入出力単位に分割し、システム開始時、前記常駐テー
ブル内容が不揮発性記憶媒体に格納されていない場合に
、その内容を1rI記不揮発性記憶媒体に書込み、トラ
ンザクション終了時に当該トランザクションが更新した
常駐テーブルの更新前情報と、当該トランザクションが
更新した常駐テーブル部分が含まれる入出力単位を更新
した他のトランザクションの当該入出力単位の更新前履
歴情報とを履歴情報ファイルに取得し、この後、当該入
出力単位を高速ランダム・アクセス可能な不揮発性記憶
媒体に書込み、システム障害時に、前記不揮発性記憶媒
体に格納した常駐テーブル内容をメモリ内に読込み、未
完了トランザクションによる更新部分を更新前情報によ
り回復することを特徴とする常駐テーブルの内容保証方
式によって達成される。
た常駐テーブルを使用したトランザクション処理を行う
情報処理システムにおいて、前記常駐テーブル群を任意
の入出力単位に分割し、システム開始時、前記常駐テー
ブル内容が不揮発性記憶媒体に格納されていない場合に
、その内容を1rI記不揮発性記憶媒体に書込み、トラ
ンザクション終了時に当該トランザクションが更新した
常駐テーブルの更新前情報と、当該トランザクションが
更新した常駐テーブル部分が含まれる入出力単位を更新
した他のトランザクションの当該入出力単位の更新前履
歴情報とを履歴情報ファイルに取得し、この後、当該入
出力単位を高速ランダム・アクセス可能な不揮発性記憶
媒体に書込み、システム障害時に、前記不揮発性記憶媒
体に格納した常駐テーブル内容をメモリ内に読込み、未
完了トランザクションによる更新部分を更新前情報によ
り回復することを特徴とする常駐テーブルの内容保証方
式によって達成される。
また、第二には、メモリ内に常駐化させた常駐テーブル
を使用したトランザクション処理を行う情報処理システ
ムにおいて、前記常駐テーブル群を任意の入出力単位に
分割し、システム開始時、前記常駐テーブル内容が不揮
発性記憶媒体に格納されていない場合に、その内容を前
記不揮発性記憶媒体に書込み、このうち、トランザクシ
ョン終了時に当該トランザクションが更新した入出力単
位について、未完了トランザクションにより更新されて
いない入出力単位は前記不揮発性記憶媒体に書込み、未
完了トランザクションにより更新された入出力単位はそ
の更新後履歴情報を履歴情報ファイルに取得し、システ
ム障害時に前記不揮発性記憶媒体に格納した常駐テーブ
ル内容をメモリ内に読込み、このうち、未完了トランザ
クションが更新していたために前記不揮発性記憶媒体に
反映されていない完了トランザクションの入出力単位の
更新部分を、常駐テーブル更新後履歴情報を用いて更新
してシステムの論理的一貫性を回復することを特徴とす
る常駐テーブルの内容保証方式によって達成される。
を使用したトランザクション処理を行う情報処理システ
ムにおいて、前記常駐テーブル群を任意の入出力単位に
分割し、システム開始時、前記常駐テーブル内容が不揮
発性記憶媒体に格納されていない場合に、その内容を前
記不揮発性記憶媒体に書込み、このうち、トランザクシ
ョン終了時に当該トランザクションが更新した入出力単
位について、未完了トランザクションにより更新されて
いない入出力単位は前記不揮発性記憶媒体に書込み、未
完了トランザクションにより更新された入出力単位はそ
の更新後履歴情報を履歴情報ファイルに取得し、システ
ム障害時に前記不揮発性記憶媒体に格納した常駐テーブ
ル内容をメモリ内に読込み、このうち、未完了トランザ
クションが更新していたために前記不揮発性記憶媒体に
反映されていない完了トランザクションの入出力単位の
更新部分を、常駐テーブル更新後履歴情報を用いて更新
してシステムの論理的一貫性を回復することを特徴とす
る常駐テーブルの内容保証方式によって達成される。
本発明の第一においては、常駐テーブルの内容を保証す
る際、常駐テーブル群をページ等の任意の入出力単位に
分割し、システム開始時に、前記常駐テーブル内容が不
揮発性記憶媒体に格納されていない場合にその内容を前
記不揮発性記憶媒体に書込み、トランザクション終了時
に、当該トランザクションが更新した常駐テーブル部分
が含まれる入出力単位を高速ランダム・アクセス可能な
不揮発性記憶媒体に書出すため、周期的なチェックポイ
ント時に常駐テーブル内容を不揮発性記憶媒体に取得す
る必要がなく、チェックポイント時の処理がボトルネッ
クとなり、システム性能を低下させることがない。
る際、常駐テーブル群をページ等の任意の入出力単位に
分割し、システム開始時に、前記常駐テーブル内容が不
揮発性記憶媒体に格納されていない場合にその内容を前
記不揮発性記憶媒体に書込み、トランザクション終了時
に、当該トランザクションが更新した常駐テーブル部分
が含まれる入出力単位を高速ランダム・アクセス可能な
不揮発性記憶媒体に書出すため、周期的なチェックポイ
ント時に常駐テーブル内容を不揮発性記憶媒体に取得す
る必要がなく、チェックポイント時の処理がボトルネッ
クとなり、システム性能を低下させることがない。
また、システム障害回復時には、読込む必要のある履歴
情報は未完了トランザクション分のみで良く、履歴情報
の読込み時間が減少する。不揮発性記憶媒体に格納した
常駐テーブル内容の更新に関しても、回復で修正された
入出力単位のみを書込めば良く、書込み時間が減少する
。従って、回復に要する時間が短縮されることになる。
情報は未完了トランザクション分のみで良く、履歴情報
の読込み時間が減少する。不揮発性記憶媒体に格納した
常駐テーブル内容の更新に関しても、回復で修正された
入出力単位のみを書込めば良く、書込み時間が減少する
。従って、回復に要する時間が短縮されることになる。
また、本発明の第二においては、常駐テーブルの内容を
保証する際、常駐テーブル群をページ等の任意の入出力
単位に分割し、システム開始時に常駐テーブルが不揮発
性記憶媒体に格納されていない場合にその内容を不揮発
性記憶媒体に書込む点は同様であるが、このうち、トラ
ンザクション終了時に、当該トランザクションが更新し
た入出力単位について、未完了トランザクションにより
更新された入出力単位はその更新後履歴情報を履歴情報
ファイルに取得する。このため1周期的なチェックポイ
ント時に常駐テーブル内容を不揮発性記憶媒体に取得す
る必要がなく、チェックポイント時の処理がボトルネッ
クとなりシステム性能を低下させることがない。
保証する際、常駐テーブル群をページ等の任意の入出力
単位に分割し、システム開始時に常駐テーブルが不揮発
性記憶媒体に格納されていない場合にその内容を不揮発
性記憶媒体に書込む点は同様であるが、このうち、トラ
ンザクション終了時に、当該トランザクションが更新し
た入出力単位について、未完了トランザクションにより
更新された入出力単位はその更新後履歴情報を履歴情報
ファイルに取得する。このため1周期的なチェックポイ
ント時に常駐テーブル内容を不揮発性記憶媒体に取得す
る必要がなく、チェックポイント時の処理がボトルネッ
クとなりシステム性能を低下させることがない。
更に、システム回復時に読込む必要のある履歴情報は、
未完了トランザクションが更新していたために不揮発性
記憶媒体に反映されていない入出力単位を持つ完了トラ
ンザクション分であり、履歴情報の読込み時間と更新後
履歴情報を用いた更新処理時間が減少する。障害回復後
に常駐テーブル内容を不揮発性記憶装置に書出す処理は
、回復処理で更新された入出力単位のみで良く、書込み
時間が減少する。従って、回復に要する時間が短縮され
ることになる。
未完了トランザクションが更新していたために不揮発性
記憶媒体に反映されていない入出力単位を持つ完了トラ
ンザクション分であり、履歴情報の読込み時間と更新後
履歴情報を用いた更新処理時間が減少する。障害回復後
に常駐テーブル内容を不揮発性記憶装置に書出す処理は
、回復処理で更新された入出力単位のみで良く、書込み
時間が減少する。従って、回復に要する時間が短縮され
ることになる。
以下、本発明の実施例を図面に基づいて詳細に説明する
。なお1本実施例では、常駐テーブル群を分割する入出
力単位をページとした場合について説明する。
。なお1本実施例では、常駐テーブル群を分割する入出
力単位をページとした場合について説明する。
第2図は本発明の一実施例を示す情報処理システムの全
体構成図であり、データベース等の情報を格納した磁気
ディスク等の情報蓄積媒体】2.常駐テーブルの内容を
保証するための半導体記憶装置等の高速ランダム・アク
セス可能な不揮発性記憶媒体14.履歴情報ファイル1
3の媒体である磁気ディスク、磁気テープ等が、CPU
/メモリ11に接続されている。
体構成図であり、データベース等の情報を格納した磁気
ディスク等の情報蓄積媒体】2.常駐テーブルの内容を
保証するための半導体記憶装置等の高速ランダム・アク
セス可能な不揮発性記憶媒体14.履歴情報ファイル1
3の媒体である磁気ディスク、磁気テープ等が、CPU
/メモリ11に接続されている。
第3図は上記メモリの内容を示す図であり、常駐テーブ
ルA−E等から成る常駐テーブル群22と更新前情報バ
ッファ25とがメモリ21内に存在し、更に、通常時に
は更新ページ管理テーブル23が。
ルA−E等から成る常駐テーブル群22と更新前情報バ
ッファ25とがメモリ21内に存在し、更に、通常時に
は更新ページ管理テーブル23が。
障害回復時には障害回復ページ・ビットマツプ24が、
メモリ21内に存在する。
メモリ21内に存在する。
常駐テーブル群22を入出力単位であるページに分割す
る際、メモリ内の常駐テーブルの配置とページの関係は
任意で良く、1ページに複数の常駐テーブルが配置され
ても良い。本実施例では、常駐テーブルAと同Bとは1
ページ内に配置され。
る際、メモリ内の常駐テーブルの配置とページの関係は
任意で良く、1ページに複数の常駐テーブルが配置され
ても良い。本実施例では、常駐テーブルAと同Bとは1
ページ内に配置され。
常駐テーブルCは1ページを占有し、常駐テーブルEは
2ページに分割されて配置されている。
2ページに分割されて配置されている。
更新前情報バッファ25は、実行中トランザクションの
常駐テーブル更新前情報を履歴情報ファイル13に取得
するまで、一時的に記憶するためにある。更新ページ管
理テーブル23は、トランザクション実行時に更新した
常駐テーブル部分が含まれるページを登録するテーブル
であり、通常動作時に存在する。
常駐テーブル更新前情報を履歴情報ファイル13に取得
するまで、一時的に記憶するためにある。更新ページ管
理テーブル23は、トランザクション実行時に更新した
常駐テーブル部分が含まれるページを登録するテーブル
であり、通常動作時に存在する。
障害回復ページ・ビットマツプ24は、常駐テーブル群
22を分割するページを1ビツトに対応付けたビットマ
ツプであり、障害回復時に存在する。
22を分割するページを1ビツトに対応付けたビットマ
ツプであり、障害回復時に存在する。
常駐テーブル群22を格納する不揮発性記憶媒体14を
、常駐テーブル群22を分割したページと同じサイズに
分割する。
、常駐テーブル群22を分割したページと同じサイズに
分割する。
第4図は本実施例における具体例であり、同一ページi
内に格納された常駐テーブルAとBとを更新する2つの
トランザクション51.52がある。
内に格納された常駐テーブルAとBとを更新する2つの
トランザクション51.52がある。
トランザクション51は時刻T1に開始され1時刻T3
に常駐テーブルAのレコードaを a′に変更し1時刻
T5に完了している。なお、レコードaをa″に変更し
たテーブルを、常駐テーブルA″とする。また、トラン
ザクション52は時刻T2に開始され、時刻T4に常駐
テーブルBのレコードbを b′に変更し、時刻T6に
システム障害のため、中断している。なお、レコードb
を b′に変更したテーブルを、常駐テーブルB′とす
る。
に常駐テーブルAのレコードaを a′に変更し1時刻
T5に完了している。なお、レコードaをa″に変更し
たテーブルを、常駐テーブルA″とする。また、トラン
ザクション52は時刻T2に開始され、時刻T4に常駐
テーブルBのレコードbを b′に変更し、時刻T6に
システム障害のため、中断している。なお、レコードb
を b′に変更したテーブルを、常駐テーブルB′とす
る。
また、第4図は、時刻T3.T4での上記更新前情報バ
ッファ25の内容、時刻T5での履歴情報ファイル13
の内容、時刻T1とT5での不揮発性記憶媒体14の内
容を示している。
ッファ25の内容、時刻T5での履歴情報ファイル13
の内容、時刻T1とT5での不揮発性記憶媒体14の内
容を示している。
次に、システムの動作を、システム開始時の動作1通常
時の動作およびシステム障害回復時の動作に分けて説明
する。
時の動作およびシステム障害回復時の動作に分けて説明
する。
(1)システム開始時の動作
システム開始時に、新規システムの開始等で常駐テーブ
ル内容が不揮発性記憶媒体に格納されていない場合か、
常駐テーブル内容が不揮発性記憶媒体に格納されている
場合か、を指定する。
ル内容が不揮発性記憶媒体に格納されていない場合か、
常駐テーブル内容が不揮発性記憶媒体に格納されている
場合か、を指定する。
(a)常駐テーブル内容が不揮発性記憶媒体に格納され
ていない場合:新規システムの開始時等、常駐テーブル
内容が不揮発性記憶媒体に格納されていない場合は、シ
ステム開始処理でメモリ内に作成された常駐テーブルの
各ページを不揮発性記憶媒体に書出す。
ていない場合:新規システムの開始時等、常駐テーブル
内容が不揮発性記憶媒体に格納されていない場合は、シ
ステム開始処理でメモリ内に作成された常駐テーブルの
各ページを不揮発性記憶媒体に書出す。
(b)常駐テーブル内容が不揮発性記憶媒体に格納され
ている場合ニジステムを計画的に終了させた後等、常駐
テーブル内容が不揮発性記憶媒体に格納されている場合
は、処理は不要である。
ている場合ニジステムを計画的に終了させた後等、常駐
テーブル内容が不揮発性記憶媒体に格納されている場合
は、処理は不要である。
(2)通常時の動作
第1図(a)は本実施例によるシステムの通常時動作の
概略フローチャートである。トランザクションの開始か
ら終了までの1本発明に係わる処理はステップ31〜ス
テツプ33の順序で行われる。以下、図に従って動作を
説明する。
概略フローチャートである。トランザクションの開始か
ら終了までの1本発明に係わる処理はステップ31〜ス
テツプ33の順序で行われる。以下、図に従って動作を
説明する。
(a)更新ページの登録(ステップ31)ニドランザク
ジョン処理中、常駐テーブル22を更新した場合、更新
前情報バッファ25に当該トランザクションの常駐テー
ブル更新前情報を記録し、更新部分が含まれるページを
更新ページ管理テーブル23に記録する。第4図の例で
は、トランザクション51による時刻T3での更新前情
報バッファ25への更新前情報aの記録と、更新ページ
管理テーブル23へのページiの記録、トランザクショ
ン52による時刻T4での更新前情報バッファ25への
更新前情報すの記録と、更新ページ管理テーブル23へ
のページiの記録が該当する。
ジョン処理中、常駐テーブル22を更新した場合、更新
前情報バッファ25に当該トランザクションの常駐テー
ブル更新前情報を記録し、更新部分が含まれるページを
更新ページ管理テーブル23に記録する。第4図の例で
は、トランザクション51による時刻T3での更新前情
報バッファ25への更新前情報aの記録と、更新ページ
管理テーブル23へのページiの記録、トランザクショ
ン52による時刻T4での更新前情報バッファ25への
更新前情報すの記録と、更新ページ管理テーブル23へ
のページiの記録が該当する。
(b)コミット命令発行時処理(ステップ32)ニドラ
ンザクジョン実行中のプログラムから処理終了を表わす
コミット命令が発行されたときに行う処理である。
ンザクジョン実行中のプログラムから処理終了を表わす
コミット命令が発行されたときに行う処理である。
i)更新前情報の取得(ステップ321) :上記更新
テーブル管理テーブル23に記録されている当該トラン
ザクションが更新したページについて、当該トランザク
ションの更新前情報と当ページを更新した他のトランザ
クションの当該ページの更新前情報とを、更新前情報バ
ッファ25から履歴情報ファイル13に書出す。第4図
の例では、トランザクション51が時刻T5で更新前情
報aとbとを更新前情報バッファ25から履歴情報ファ
イル13に書出す処理が該当する。
テーブル管理テーブル23に記録されている当該トラン
ザクションが更新したページについて、当該トランザク
ションの更新前情報と当ページを更新した他のトランザ
クションの当該ページの更新前情報とを、更新前情報バ
ッファ25から履歴情報ファイル13に書出す。第4図
の例では、トランザクション51が時刻T5で更新前情
報aとbとを更新前情報バッファ25から履歴情報ファ
イル13に書出す処理が該当する。
ii)ページの書出しくステップ322) :更新ペー
ジ管理テーブル23に記録されている当該トランザクシ
ョンが更新したページを不揮発性記憶媒体14に書込む
。第4図の例では、トランザクション51が時刻T5で
常駐テーブルA′とB′とが含まれたページiを、不揮
発性記憶媒体14に書出す処理が該当する。ページの書
込み位置は1重ね書きでも、前回と異なった位置でも良
い、前回と異なった位置に書込んだ場合、書込み中にシ
ステム障害が発生しても、当ページ内容が破壊されるこ
とがなく、耐障害性が強化されるという利点がある。
ジ管理テーブル23に記録されている当該トランザクシ
ョンが更新したページを不揮発性記憶媒体14に書込む
。第4図の例では、トランザクション51が時刻T5で
常駐テーブルA′とB′とが含まれたページiを、不揮
発性記憶媒体14に書出す処理が該当する。ページの書
込み位置は1重ね書きでも、前回と異なった位置でも良
い、前回と異なった位置に書込んだ場合、書込み中にシ
ステム障害が発生しても、当ページ内容が破壊されるこ
とがなく、耐障害性が強化されるという利点がある。
(c)プロセス完了情報の取得(ステッテ33):上記
ステップ32の処理が終了した後、トランザクションの
プロセスが完了した旨を告げるプロセス完了情報(PJ
)を、履歴情報ファイル13に取得する。本処理が完了
した時点で、当該トランザクションは実行完了とみなし
、以降、その結果は保証される。上記プロセス完了情報
には、トランザクション番号等を記録する。第4v!i
の例では、トランザクション51が時刻T5でプロセス
完了情報(P J (51))を履歴情報ファイル13
に取得する処理が該当する。
ステップ32の処理が終了した後、トランザクションの
プロセスが完了した旨を告げるプロセス完了情報(PJ
)を、履歴情報ファイル13に取得する。本処理が完了
した時点で、当該トランザクションは実行完了とみなし
、以降、その結果は保証される。上記プロセス完了情報
には、トランザクション番号等を記録する。第4v!i
の例では、トランザクション51が時刻T5でプロセス
完了情報(P J (51))を履歴情報ファイル13
に取得する処理が該当する。
(3)システム障害回復時の動作
第1図(b)は本実施例によるシステム障害回復ページ
の概略フローチャートである。システム障害回復の開始
から終了までの、本発明に係わる処理はステップ41〜
ステツプ44の順序で行われる。
の概略フローチャートである。システム障害回復の開始
から終了までの、本発明に係わる処理はステップ41〜
ステツプ44の順序で行われる。
以下、図に従って動作を説明する。
(a)障害回復ページ・ビットマツプの作成(ステップ
41): 常駐テーブル群22を分割するページを1ビツトに対応
付けた障害回復ページ・ビットマツプ24を作成し、ビ
ットマツプのすべてのビットを110”に初期化する。
41): 常駐テーブル群22を分割するページを1ビツトに対応
付けた障害回復ページ・ビットマツプ24を作成し、ビ
ットマツプのすべてのビットを110”に初期化する。
このビットマツプは回復処理の対象となったページを識
別するために使用する。
別するために使用する。
(b)常駐テーブルの読込み(ステップ42):不揮発
性記憶媒体14に格納された常駐テーブル内容をメモリ
内に読込む。第4図の例では、常駐テーブルA′とB′
が含まれるページi等が、この処理でメモリに読込まれ
る。
性記憶媒体14に格納された常駐テーブル内容をメモリ
内に読込む。第4図の例では、常駐テーブルA′とB′
が含まれるページi等が、この処理でメモリに読込まれ
る。
(c)履歴情報による回復(ステップ43):履歴情報
ファイル13から履歴情報を更新前情報バッファ25に
読込む。履歴情報を解析し、プロセス完了情報を取得す
る以前にシステム障害により中断しているトランザクシ
ョンの常駐テーブル更新前情報であれば、メモリ内の常
駐テーブルを当該更新前情報で回復する。第4図の例で
は、トランザクション51はプロセス完了情報(P J
(51))が取t!)されているので完了していると
みなし、トランザクション52はプロセス完了情報が取
得されていないので未完了とみなす。
ファイル13から履歴情報を更新前情報バッファ25に
読込む。履歴情報を解析し、プロセス完了情報を取得す
る以前にシステム障害により中断しているトランザクシ
ョンの常駐テーブル更新前情報であれば、メモリ内の常
駐テーブルを当該更新前情報で回復する。第4図の例で
は、トランザクション51はプロセス完了情報(P J
(51))が取t!)されているので完了していると
みなし、トランザクション52はプロセス完了情報が取
得されていないので未完了とみなす。
未完了のトランザクション52の更新部分を更新前の状
態に戻すために、更新前情報すを用い、常駐テーブルB
′を更新前の状態(常駐テーブルB)に回復する。この
際、回復したページに対応する障害回復ページ・ビット
マツプ24上・のビット位置に“1”を書込む。第4図
の例では、ページiに対応する障害回復ページ・ビット
マツプ24上のビット位置に6′1”が書込まれる。
態に戻すために、更新前情報すを用い、常駐テーブルB
′を更新前の状態(常駐テーブルB)に回復する。この
際、回復したページに対応する障害回復ページ・ビット
マツプ24上・のビット位置に“1”を書込む。第4図
の例では、ページiに対応する障害回復ページ・ビット
マツプ24上のビット位置に6′1”が書込まれる。
(d)更新ページの書出しくステップ44):障害回復
ページ・ビットマツプ24を検索し、上記II I 1
1が書込まれたビット位置に対応するページを不揮発性
記憶媒体14に書出し、次のシステム障害に備える。第
4図の例では、常駐テーブルA′とBとが含まれるペー
ジiに対応するビット位置にII L Jjが書込まれ
ているので、当該ページを不揮発性記憶媒体14に書出
す。
ページ・ビットマツプ24を検索し、上記II I 1
1が書込まれたビット位置に対応するページを不揮発性
記憶媒体14に書出し、次のシステム障害に備える。第
4図の例では、常駐テーブルA′とBとが含まれるペー
ジiに対応するビット位置にII L Jjが書込まれ
ているので、当該ページを不揮発性記憶媒体14に書出
す。
上記実施例によれば、常駐テーブルを使用してトランザ
クション処理を行う情報処理システムにおいて、チェッ
クポイント時に常駐テーブルの全内容を不揮発性記憶媒
体に取得する必要がないため、チェックポイント時にシ
ステム性能が低下することがない。また、システム障害
回復処理においても、未完了トランザクションの履歴情
報のみでシステム回復が行えるため、更新情報の読込み
時間が減少するとともに、不揮発性記憶媒体に格納した
常駐テーブル内容の更新も、回復で修正されたページの
みを不揮発性記憶媒体に書込めば良いので、書込み時間
が減少する。従って、入出力時間の減少により、システ
ム回復時間が短縮されるという効果がある。
クション処理を行う情報処理システムにおいて、チェッ
クポイント時に常駐テーブルの全内容を不揮発性記憶媒
体に取得する必要がないため、チェックポイント時にシ
ステム性能が低下することがない。また、システム障害
回復処理においても、未完了トランザクションの履歴情
報のみでシステム回復が行えるため、更新情報の読込み
時間が減少するとともに、不揮発性記憶媒体に格納した
常駐テーブル内容の更新も、回復で修正されたページの
みを不揮発性記憶媒体に書込めば良いので、書込み時間
が減少する。従って、入出力時間の減少により、システ
ム回復時間が短縮されるという効果がある。
例えば、常駐テーブル量を4MB、常駐テーブルの分割
単位をページとし、トランザクション当りの更新を2ペ
ージ(1ページは4KBとする)、チェックポイント間
隔を1000 トランザクション当り1回、システム障
害発生時に常駐テーブルを更新していたトランザクショ
ン数を10とすると、本実施例においては、従来方式に
比べて、システム障害回復に必要な履歴情報量と用込み
時間は10/1000=1/100となり、不揮発性記
憶媒体に格納した常駐テーブル内容の更新も(2X 4
Xl0)/(4X1000) = 1150に減少す
る。
単位をページとし、トランザクション当りの更新を2ペ
ージ(1ページは4KBとする)、チェックポイント間
隔を1000 トランザクション当り1回、システム障
害発生時に常駐テーブルを更新していたトランザクショ
ン数を10とすると、本実施例においては、従来方式に
比べて、システム障害回復に必要な履歴情報量と用込み
時間は10/1000=1/100となり、不揮発性記
憶媒体に格納した常駐テーブル内容の更新も(2X 4
Xl0)/(4X1000) = 1150に減少す
る。
上記実施例においては、障害回復の対象となったページ
を記録するのに障害回復ページ・ビットマツプ24を用
いたが、これはページ識別名を記録したリスト構造で実
現することも可能である。
を記録するのに障害回復ページ・ビットマツプ24を用
いたが、これはページ識別名を記録したリスト構造で実
現することも可能である。
第5図は本発明の他の実施例を示すシステムの全体構成
図であり、IIA〜14Aは先に第2図に示した構成要
素11〜14と同様の構成要素を示している。但し、不
揮発性記憶媒体14Aは後述する制御情報を記憶する制
御情報領域+41と、常駐テーブル保証領域142から
構成されている。
図であり、IIA〜14Aは先に第2図に示した構成要
素11〜14と同様の構成要素を示している。但し、不
揮発性記憶媒体14Aは後述する制御情報を記憶する制
御情報領域+41と、常駐テーブル保証領域142から
構成されている。
上記制御情報領域141は、後述するページマツプや履
歴情報リスト等の制御情報を格納できるように2領域(
制御情報領域Oと制御情報領域1)から構成されている
。また、常駐テーブル保証領域142は常駐テーブル内
容を格納する領域であり、常駐テーブルを分割したペー
ジと同じサイズのスロットに分割されている。
歴情報リスト等の制御情報を格納できるように2領域(
制御情報領域Oと制御情報領域1)から構成されている
。また、常駐テーブル保証領域142は常駐テーブル内
容を格納する領域であり、常駐テーブルを分割したペー
ジと同じサイズのスロットに分割されている。
第6図は制御情報を示す図である。ページマツプ61は
、各ページについて、障害発生時に保証すべき論理的一
貫性のあるページ内容の格納位置を示すためスロットア
ドレスを記録し、前記CPU/メモリのメモリ21A内
と上記制御情報領域141内に置かれている。スロット
使用マツプ62は、常駐テーブル保証領域142内の各
スロットが使用中か未使用かを示すビットマツプであり
、上記メモリ21A内に置かれている。
、各ページについて、障害発生時に保証すべき論理的一
貫性のあるページ内容の格納位置を示すためスロットア
ドレスを記録し、前記CPU/メモリのメモリ21A内
と上記制御情報領域141内に置かれている。スロット
使用マツプ62は、常駐テーブル保証領域142内の各
スロットが使用中か未使用かを示すビットマツプであり
、上記メモリ21A内に置かれている。
カレント情報リスト63は、トランザクション毎に履歴
情報を書込んだ履歴情報ファイル13A内の先頭位置お
よび更新したページ番号と前記常駐テーブル保証領域1
42に書込んだスロットアドレスを記録し、上記メモリ
21A内に置かれている。
情報を書込んだ履歴情報ファイル13A内の先頭位置お
よび更新したページ番号と前記常駐テーブル保証領域1
42に書込んだスロットアドレスを記録し、上記メモリ
21A内に置かれている。
履歴情報リスト64は、完了トランザクションが更新し
たページのうち、未完了トランザクションが更新してい
たため常駐テーブル保証領域142に書込んでいないペ
ージを回復するために必要な履歴情報を記録する。すな
わち、常駐テーブル保証領域142に更新結果が反映さ
れていないトランザクションのうち、履歴情報ファイル
13A内の書込み位置が最も前のトランザクションの履
歴情報位置を記録する。履歴情報リスト64は、前記メ
モリ21A内と制御情報領域141内に置かれている。
たページのうち、未完了トランザクションが更新してい
たため常駐テーブル保証領域142に書込んでいないペ
ージを回復するために必要な履歴情報を記録する。すな
わち、常駐テーブル保証領域142に更新結果が反映さ
れていないトランザクションのうち、履歴情報ファイル
13A内の書込み位置が最も前のトランザクションの履
歴情報位置を記録する。履歴情報リスト64は、前記メ
モリ21A内と制御情報領域141内に置かれている。
制御情報マツプ65は、制御情報領域141内の有効領
域を示すビットマツプであり、前記メモリ21A内に置
かれている。上記有効領域は、例えば、ビットが0”の
とき前記制御情報領域01It I 11のとき前記制
御情報領域1を示すものとする。
域を示すビットマツプであり、前記メモリ21A内に置
かれている。上記有効領域は、例えば、ビットが0”の
とき前記制御情報領域01It I 11のとき前記制
御情報領域1を示すものとする。
第7図は常駐テーブルの内容保証処理を示す具体例であ
る。第7図(a)に示す如く、メモリ21A内の常駐テ
ーブルA−E等から成る常駐テーブル群を入出力単位の
ページに分割する際、メモリ内の常駐テーブルの配置と
ページとの関係は任意で良く、1ページに複数の常駐テ
ーブルが配置されても良いこと等は前述の通りである。
る。第7図(a)に示す如く、メモリ21A内の常駐テ
ーブルA−E等から成る常駐テーブル群を入出力単位の
ページに分割する際、メモリ内の常駐テーブルの配置と
ページとの関係は任意で良く、1ページに複数の常駐テ
ーブルが配置されても良いこと等は前述の通りである。
上記常駐テーブル更新部分とページ番号との対応は、更
新部分のメモリ内の常駐テーブル領域先頭からの変位を
ページサイズで割った商に基づいてページ番号を算出す
る。これは、ページとそこに格納されている常駐テーブ
ルを対応付けるテーブルを作成しても良い。常駐テーブ
ル境界75は常駐テーブルの境界線を示しており、ペー
ジ境界76は常駐テーブル群を分割するページの境界線
を示している。また、スロット境界77は後述する常駐
テーブル保証領域を分割するスロットの境界線を示して
いる。
新部分のメモリ内の常駐テーブル領域先頭からの変位を
ページサイズで割った商に基づいてページ番号を算出す
る。これは、ページとそこに格納されている常駐テーブ
ルを対応付けるテーブルを作成しても良い。常駐テーブ
ル境界75は常駐テーブルの境界線を示しており、ペー
ジ境界76は常駐テーブル群を分割するページの境界線
を示している。また、スロット境界77は後述する常駐
テーブル保証領域を分割するスロットの境界線を示して
いる。
本実施例における常駐テーブルの配置は、先の実施例に
示したと同様に、常駐テーブルAと同Bは1ページ内に
配置され、常駐テーブルCは1ページを占有し、常駐テ
ーブルEは2ページに分割された形になっている。同一
ページi内に含まれる常駐テーブルAとBを更新する3
つのトランザクション71.72.73がある。
示したと同様に、常駐テーブルAと同Bは1ページ内に
配置され、常駐テーブルCは1ページを占有し、常駐テ
ーブルEは2ページに分割された形になっている。同一
ページi内に含まれる常駐テーブルAとBを更新する3
つのトランザクション71.72.73がある。
トランザクション71は、時刻T1に開始され時刻T
2に常駐テーブルAのレコードa1を al’に変更し
1時刻T3に完了している。ここで、常駐テーブルAの
レコードa1を a l lに変更したテーブルを常駐
テーブルA′とする。トランザクション72は、時刻T
4に開始され、時刻T6に常駐テーブルBのレコードb
1を bl’に変更し。
2に常駐テーブルAのレコードa1を al’に変更し
1時刻T3に完了している。ここで、常駐テーブルAの
レコードa1を a l lに変更したテーブルを常駐
テーブルA′とする。トランザクション72は、時刻T
4に開始され、時刻T6に常駐テーブルBのレコードb
1を bl’に変更し。
時刻T8に完了している。ここで、常駐テーブルBのレ
コードb1を b1″に変更したテーブルを常駐テーブ
ルB′とする。また、トランザクション73は、時刻T
5に開始され、時刻T7に常駐テーブルAのレコードa
2を a2’に変更し、時刻T9にシステム障害のため
に中断している。ここで、常駐テーブルAのレコードa
2を a2’に変更したテーブルを常駐テーブルA ”
とする。
コードb1を b1″に変更したテーブルを常駐テーブ
ルB′とする。また、トランザクション73は、時刻T
5に開始され、時刻T7に常駐テーブルAのレコードa
2を a2’に変更し、時刻T9にシステム障害のため
に中断している。ここで、常駐テーブルAのレコードa
2を a2’に変更したテーブルを常駐テーブルA ”
とする。
また、第7図(b)は時刻Tl、T2.T6.”I”7
における上記メモリ21A内のページiの内容、それぞ
れ21a〜21dと、時刻T3.T8における前記履歴
情報ファイル13A、不揮発性記憶媒体14Aの内容、
それぞれ13a 、 13b ; 14a 、 14b
を示している。
における上記メモリ21A内のページiの内容、それぞ
れ21a〜21dと、時刻T3.T8における前記履歴
情報ファイル13A、不揮発性記憶媒体14Aの内容、
それぞれ13a 、 13b ; 14a 、 14b
を示している。
以下、本実施例の動作を説明する。
(1)システム開始時の動作
システム開始時に常駐テーブル内容が不揮発性記憶媒体
14Aに格納されている場合か否かを指定する点は、先
の実施例と同様である。
14Aに格納されている場合か否かを指定する点は、先
の実施例と同様である。
(a)常駐テーブル内容が不揮発性記憶媒体に格納され
ていない場合:新規システムの開始時等、常駐テーブル
内容が不揮発性記憶媒体に格納されていない場合の、常
駐テーブル保証方式に関するシステム開始処理を、以下
、i)、ii)に示す。
ていない場合:新規システムの開始時等、常駐テーブル
内容が不揮発性記憶媒体に格納されていない場合の、常
駐テーブル保証方式に関するシステム開始処理を、以下
、i)、ii)に示す。
i)ページの書出しニジステム開始処理でメモリ21A
内に作成された上記常駐テーブルの各ページについて、
メモリ内のスロット使用マツプ62で未使用スロットを
見つけ、そのスロットアドレスをページマツプ61に記
録し、スロット使用マツプ62で当該スロットのビット
をオンとする。その後、ページマツプ61に記録された
スロットにページを書出す。
内に作成された上記常駐テーブルの各ページについて、
メモリ内のスロット使用マツプ62で未使用スロットを
見つけ、そのスロットアドレスをページマツプ61に記
録し、スロット使用マツプ62で当該スロットのビット
をオンとする。その後、ページマツプ61に記録された
スロットにページを書出す。
ii)制御情報の書出し:制御情報マツプ65にビット
LL OI+ (ビットII 1 )Hでも良い)を記
録し、ページマツプ61と書込み時間を制御情報マツプ
が示す領域に書出す。
LL OI+ (ビットII 1 )Hでも良い)を記
録し、ページマツプ61と書込み時間を制御情報マツプ
が示す領域に書出す。
(b)常駐テーブル内容が不揮発性記憶媒体に格納され
ている場合ニジステムを計画的に終了させた後等、常駐
テーブル内容が不揮発性記憶媒体に格納されている場合
の処理を、以下、i)、ji)に示す。
ている場合ニジステムを計画的に終了させた後等、常駐
テーブル内容が不揮発性記憶媒体に格納されている場合
の処理を、以下、i)、ji)に示す。
i)制御情報の読込み:制御情報領域】41内の2領域
(制御情報領域Oと制御情報領域1)に記録された書込
み時刻を比較し、制御情報の取得時刻の遅い方の領域を
示すように、制御情報マツプ65にビット情報を記録し
、記録された領域からページマツプ61をメモリ内に読
込む。ページマツプ61に記録されたスロットアドレス
から、スロット使用マツプ62を作成する。
(制御情報領域Oと制御情報領域1)に記録された書込
み時刻を比較し、制御情報の取得時刻の遅い方の領域を
示すように、制御情報マツプ65にビット情報を記録し
、記録された領域からページマツプ61をメモリ内に読
込む。ページマツプ61に記録されたスロットアドレス
から、スロット使用マツプ62を作成する。
ji)常駐テーブルの読込み:ページマップ61を参照
し、各ページに対応するスロットを常駐テーブル保証領
域142からメモリ内に読込む。
し、各ページに対応するスロットを常駐テーブル保証領
域142からメモリ内に読込む。
(2)通常時の動作
第8図(a)は本実施例によるシステムの通常動作の概
略フローチャートである。トランザクションの開始から
終了までの本発明に係わる処理は、ステップ81〜ステ
ツプ85の順序で行われる。
略フローチャートである。トランザクションの開始から
終了までの本発明に係わる処理は、ステップ81〜ステ
ツプ85の順序で行われる。
(a)更新ページの登録(ステップ8]):トランザク
ション処理中、常駐テーブルを初めて更新した場合、当
該トランザクション識別名と更新部分が含まれるページ
番号とを、前記カレント情報リスト63に記録し、以降
、常駐テーブルを更新した場合、更新部分が含まれるペ
ージ番号を当該トランザクション識別名が記録されたカ
レント情報リスト63に記録する。第7図の例では、時
刻T2でトランザクション71のトランザクション識別
名と常駐テーブルA′が含まれるページiを記録する処
理、時刻T6でトランザクション72のトランザクショ
ン識別名と常駐テーブルB′が含まれるページiを記録
する処理、時刻T7でトランザクション73のトランザ
クション識別名と常駐テーブルA IIが含まれるペー
ジiを記録する処理が該当する。
ション処理中、常駐テーブルを初めて更新した場合、当
該トランザクション識別名と更新部分が含まれるページ
番号とを、前記カレント情報リスト63に記録し、以降
、常駐テーブルを更新した場合、更新部分が含まれるペ
ージ番号を当該トランザクション識別名が記録されたカ
レント情報リスト63に記録する。第7図の例では、時
刻T2でトランザクション71のトランザクション識別
名と常駐テーブルA′が含まれるページiを記録する処
理、時刻T6でトランザクション72のトランザクショ
ン識別名と常駐テーブルB′が含まれるページiを記録
する処理、時刻T7でトランザクション73のトランザ
クション識別名と常駐テーブルA IIが含まれるペー
ジiを記録する処理が該当する。
(b)コミット命令時の更新ページの書出しまたは更新
後情報の取得(ステップ82)ニ ドランザクジョンで実行中のプログラムから処理終了を
表わすコミット命令が発行されたときに行う処理である
。前記カレント情報リスト63を検索し、当該トランザ
クションが更新したページについて、未完了トランザク
ションにより更新されていないページは常駐テーブル保
証領域142に書出し、未完了トランザクションにより
更新されたページはその更新後履歴情報を履歴情報ファ
イル+3Aに取得する。
後情報の取得(ステップ82)ニ ドランザクジョンで実行中のプログラムから処理終了を
表わすコミット命令が発行されたときに行う処理である
。前記カレント情報リスト63を検索し、当該トランザ
クションが更新したページについて、未完了トランザク
ションにより更新されていないページは常駐テーブル保
証領域142に書出し、未完了トランザクションにより
更新されたページはその更新後履歴情報を履歴情報ファ
イル+3Aに取得する。
i)ページ書出し処理:当該トランザクションが更新し
たページのうち、未完了トランザクションにより更新さ
れていないページは、常駐テーブル保証領域142に書
出す。ページiを書出す場合、メモリ内のスロット使用
マツプ62で未使用スロットを見つけ、そのスロットア
ドレス(kとする)をカレント情報リスト63に記録し
、更に、そのスロットにページ1を書出す。新しく使用
中となったスロットの当該スロットkに対応するビット
を、メモリ内のスロット使用マツプ62でオンとする。
たページのうち、未完了トランザクションにより更新さ
れていないページは、常駐テーブル保証領域142に書
出す。ページiを書出す場合、メモリ内のスロット使用
マツプ62で未使用スロットを見つけ、そのスロットア
ドレス(kとする)をカレント情報リスト63に記録し
、更に、そのスロットにページ1を書出す。新しく使用
中となったスロットの当該スロットkに対応するビット
を、メモリ内のスロット使用マツプ62でオンとする。
第7図の例では、時刻T5でトランザクション71が更
新したページiをスロットkに書出す処理が該当する。
新したページiをスロットkに書出す処理が該当する。
ii)履歴情報取得処理二当該トランザクションが更新
したページのうち、未完了トランザクションにより更新
されたページは、カレント情報リスト63内のスロット
アドレスをnullとし、その更新後履歴情報を履歴情
報ファイル13Aに取得する。この際、履歴情報ファイ
ル13Aに書出した当該トランザクションの先頭位置を
カレント情報リスト63に記録する。第7図の例では、
時刻T8でトランザクション72の更新後履歴情報(c
J(bl’))の履歴情報ファイル13Aへの取得処理
と、その位置(履歴情報位置72)のカレント情報リス
ト63への取得処理が該当する。
したページのうち、未完了トランザクションにより更新
されたページは、カレント情報リスト63内のスロット
アドレスをnullとし、その更新後履歴情報を履歴情
報ファイル13Aに取得する。この際、履歴情報ファイ
ル13Aに書出した当該トランザクションの先頭位置を
カレント情報リスト63に記録する。第7図の例では、
時刻T8でトランザクション72の更新後履歴情報(c
J(bl’))の履歴情報ファイル13Aへの取得処理
と、その位置(履歴情報位置72)のカレント情報リス
ト63への取得処理が該当する。
(c)プロセス完了情報の取得(ステップ83):上記
ステップ82の処理が終了した後、前記プロセス完了情
報(PJ)を履歴情報ファイル13Aに取得する。本処
理が完了した時点で当該トランザクションは実行完了と
みなし、以降、その結果は保証されることは前述の通り
である。プロセス完了情報には、トランザクション番号
等を記録する。
ステップ82の処理が終了した後、前記プロセス完了情
報(PJ)を履歴情報ファイル13Aに取得する。本処
理が完了した時点で当該トランザクションは実行完了と
みなし、以降、その結果は保証されることは前述の通り
である。プロセス完了情報には、トランザクション番号
等を記録する。
第7図の例では、時刻T3でトランザクション71のプ
ロセス完了情報(P J (71))を履歴情報ファイ
ル13Aに取得する処理、時刻T8でトランザクション
72のプロセス完了情報(P J (72))を履歴情
報ファイル13Aに取得する処理が該当する。
ロセス完了情報(P J (71))を履歴情報ファイ
ル13Aに取得する処理、時刻T8でトランザクション
72のプロセス完了情報(P J (72))を履歴情
報ファイル13Aに取得する処理が該当する。
(d)制御情報の取得(ステップ84):上記ステップ
83の処理が終了すると、カレント情報リスト63にδ
己録されてし)だページについて。
83の処理が終了すると、カレント情報リスト63にδ
己録されてし)だページについて。
以下のi)〜1ii)の処理を行う。
j)メモリ内のページマツプ61に記録されたスロット
アドレスを基に、スロット使用マツプ62の当該ビット
をオフにする。
アドレスを基に、スロット使用マツプ62の当該ビット
をオフにする。
ii)カレント情報リスト63に記録されたスロットア
ドレスがnullでないページについて、スロットアド
レスをメモリ内のページマツプ61に記録し、当該ペー
ジが履歴情報リスト64に記録されている場合、履歴情
報リスト64から当該ページとその情報を削除する。
ドレスがnullでないページについて、スロットアド
レスをメモリ内のページマツプ61に記録し、当該ペー
ジが履歴情報リスト64に記録されている場合、履歴情
報リスト64から当該ページとその情報を削除する。
iii )カレント情報リスト63に記録されたスロッ
トアドレスがnullであるページについて、カレント
情報リスト63に記録された履歴情報位置とページ番号
を履歴情報リスト64に記録する。
トアドレスがnullであるページについて、カレント
情報リスト63に記録された履歴情報位置とページ番号
を履歴情報リスト64に記録する。
この後、制御情報マツプ65のビット内容とビットLL
I 11の排他的論理和が示す領域にメモリ内のペー
ジマツプ61.&層情報リスト54.後述する未完了ト
ランザクションリストを書込む。上記未完了トランザク
ションリストとは、カレント情報リスト63に記録され
た当該コミット処理中トランザクション以外のトランザ
クション識別名を集めたリストである。この後、制御情
報マツプ65の内容を更新して、当当処理で書込んだ領
域を示すように変更し、更にその領域に書込み時刻を記
録する。
I 11の排他的論理和が示す領域にメモリ内のペー
ジマツプ61.&層情報リスト54.後述する未完了ト
ランザクションリストを書込む。上記未完了トランザク
ションリストとは、カレント情報リスト63に記録され
た当該コミット処理中トランザクション以外のトランザ
クション識別名を集めたリストである。この後、制御情
報マツプ65の内容を更新して、当当処理で書込んだ領
域を示すように変更し、更にその領域に書込み時刻を記
録する。
第7図の例では、時刻T3でトランザクション71のコ
ミット処理に関する制御情報を制御情報領域141に記
録する処理、時刻T8でトランザクション72のコミッ
ト処理に関する制御情報を制御情報領域141に記録す
る処理が該当する。
ミット処理に関する制御情報を制御情報領域141に記
録する処理、時刻T8でトランザクション72のコミッ
ト処理に関する制御情報を制御情報領域141に記録す
る処理が該当する。
(e)トランザクション完了情報の取得(ステップ85
)二 上記ステップ84の処理が終了すると、前記トランザク
ション完了情報(TJ)を履歴情報ファイル13Aに取
得する。具体的には、トランザクション番号を記録する
。第7図の例では、時刻T3でトランザクション71の
トランザクション完了情報(T J (71))を履歴
情報ファイル13Aに取得する処理、時刻T8でトラン
ザクション72のトランドクション情報(T J (7
2乃を履歴情報ファイル13Aに取得する処理が該当す
る。
)二 上記ステップ84の処理が終了すると、前記トランザク
ション完了情報(TJ)を履歴情報ファイル13Aに取
得する。具体的には、トランザクション番号を記録する
。第7図の例では、時刻T3でトランザクション71の
トランザクション完了情報(T J (71))を履歴
情報ファイル13Aに取得する処理、時刻T8でトラン
ザクション72のトランドクション情報(T J (7
2乃を履歴情報ファイル13Aに取得する処理が該当す
る。
(3)システム障害回復時の動作
第8図(b)は本実施例によるシステム障害回復時動作
の概略フローチャートである。システム障害回復の開始
から終了までの本発明に係わる処理は、ステップ91〜
ステツプ94の順序で行われる。
の概略フローチャートである。システム障害回復の開始
から終了までの本発明に係わる処理は、ステップ91〜
ステツプ94の順序で行われる。
(a)制御情報の読込み(ステップ旧):制御情報領域
141内の前記2領域に記録された書込み時刻を比較し
、制御情報の取得時刻の遅い方の領域を示すように制御
情報マツプ65にビット情報を記録し、記録された領域
からページマツプ61、履歴情報リスト64.未完了ト
ランザクションリストをメモリ内に読込む。ページマツ
プ61に記録されたスロットアドレスからスロット使用
マツプ62を作成する。
141内の前記2領域に記録された書込み時刻を比較し
、制御情報の取得時刻の遅い方の領域を示すように制御
情報マツプ65にビット情報を記録し、記録された領域
からページマツプ61、履歴情報リスト64.未完了ト
ランザクションリストをメモリ内に読込む。ページマツ
プ61に記録されたスロットアドレスからスロット使用
マツプ62を作成する。
(b)常駐テーブルの読込み(ステップ92)二ページ
マツプ61を参照し、各ページに対応するスロットを常
駐テーブル保証領域142からメモリ内に読込む。第7
図の例では、常駐テーブルA′と同Bが含まれるページ
i等がこの処理でメモリ内に読込まれる。
マツプ61を参照し、各ページに対応するスロットを常
駐テーブル保証領域142からメモリ内に読込む。第7
図の例では、常駐テーブルA′と同Bが含まれるページ
i等がこの処理でメモリ内に読込まれる。
(c)8歴情報による回復(ステップ93):メモリ内
の履歴情報リスト64を検索し、回復対象となるページ
を更新したトランザクションのうち、最も早く履歴情報
ファイル13Aに記録されたトランザクションの履歴情
報位置を決定する。この位置から履歴情報を取得類に読
み、履歴情報リスト64に記録された回復対象ページで
、未完了トランザクションリストに記録されていないト
ランザクションの常駐テーブル更新後履歴情報を用いて
、メモリ内の常駐テーブルを更新する。第7図の例では
、常駐テーブル更新後情報(CJ(bl’))を用いて
、常駐テーブルBを常駐テーブルB’に更新する処理が
該当する。
の履歴情報リスト64を検索し、回復対象となるページ
を更新したトランザクションのうち、最も早く履歴情報
ファイル13Aに記録されたトランザクションの履歴情
報位置を決定する。この位置から履歴情報を取得類に読
み、履歴情報リスト64に記録された回復対象ページで
、未完了トランザクションリストに記録されていないト
ランザクションの常駐テーブル更新後履歴情報を用いて
、メモリ内の常駐テーブルを更新する。第7図の例では
、常駐テーブル更新後情報(CJ(bl’))を用いて
、常駐テーブルBを常駐テーブルB’に更新する処理が
該当する。
(cl)更新ページの書出しくステップ94):メモリ
内の履歴情報リスト64に記録されたページをコミット
時のページ書出し処理と同じ方式で常駐テーブル保証領
域142に書出す。第7図の例では、常駐テーブルA′
と同B′が含まれるページiが履歴情報リスト64に書
込まれているので、当該ページを不揮発性記憶媒体に奔
出す。この後。
内の履歴情報リスト64に記録されたページをコミット
時のページ書出し処理と同じ方式で常駐テーブル保証領
域142に書出す。第7図の例では、常駐テーブルA′
と同B′が含まれるページiが履歴情報リスト64に書
込まれているので、当該ページを不揮発性記憶媒体に奔
出す。この後。
メモリ内の履歴情報リスト64をリセットし、コミット
時の制御情報の取得処理と同じ方式で制御情報の更新を
行い1次のシステム障害に備える。
時の制御情報の取得処理と同じ方式で制御情報の更新を
行い1次のシステム障害に備える。
上記実施例によれば、先に示した実施例と同様に、常駐
テーブルを使用してトランザクション処理を行う情報処
理システムにおいて、チェックポイント時に常駐テーブ
ル群の全内容を不揮発性記憶媒体に取得する必要がない
ため、チェックポイント時にシステムの性能が低下する
ことがない。
テーブルを使用してトランザクション処理を行う情報処
理システムにおいて、チェックポイント時に常駐テーブ
ル群の全内容を不揮発性記憶媒体に取得する必要がない
ため、チェックポイント時にシステムの性能が低下する
ことがない。
また、システム障害回復処理においても、読込む必要が
ある履歴情報は、未完了トランザクションが更新してい
たために不揮発性記憶媒体に反映されていない入出力単
位を持つ完了トランザクション分であり1M歴情報の読
込み時間が減少するとともに、更新後履歴情報を用いた
常駐テーブル更新量が大幅に減少するため、更新に要す
るCPU処理時間も減少する。障害回復後に常駐テーブ
ル内容を不揮発性記憶媒体に書出す処理は、回復処理で
更新されたページのみで良く、書込み時間が減少する。
ある履歴情報は、未完了トランザクションが更新してい
たために不揮発性記憶媒体に反映されていない入出力単
位を持つ完了トランザクション分であり1M歴情報の読
込み時間が減少するとともに、更新後履歴情報を用いた
常駐テーブル更新量が大幅に減少するため、更新に要す
るCPU処理時間も減少する。障害回復後に常駐テーブ
ル内容を不揮発性記憶媒体に書出す処理は、回復処理で
更新されたページのみで良く、書込み時間が減少する。
従って、システム回復時間が短縮されるという効果があ
る。
る。
例えば、先に示した実施例におけると同様の仮定の下で
、システム障害発生時に、未完了トランザクションが更
新していたために不揮発性記憶媒体に反映されていない
ページがあるトランザクション数を5とし、そのうち、
履歴情報ファイル内の書込み位置が最も前のトランザク
ションの履歴情報位置を50トランザクシヨン前とする
と、本実施例では、システム障害回復に必要な履歴情報
量と読込み時間は、50/1000= 1 /20とな
り、不揮発性記憶媒体に格納した常駐テーブル内容の更
新も、(2x 5)/(4xt000/4)=1/10
0程度に減少する。
、システム障害発生時に、未完了トランザクションが更
新していたために不揮発性記憶媒体に反映されていない
ページがあるトランザクション数を5とし、そのうち、
履歴情報ファイル内の書込み位置が最も前のトランザク
ションの履歴情報位置を50トランザクシヨン前とする
と、本実施例では、システム障害回復に必要な履歴情報
量と読込み時間は、50/1000= 1 /20とな
り、不揮発性記憶媒体に格納した常駐テーブル内容の更
新も、(2x 5)/(4xt000/4)=1/10
0程度に減少する。
上記実施例においては、有効な制御情報領域を判断する
際、制御情報領域内に記録された情報書込み時刻の遅い
方としたが、制御情報マツプ65をプロセス完了情報内
に記録し、回復処理を行う際履歴情報ファイル13Aを
履歴情報取得類と逆順に読み、最初に発見したプロセス
完了情報内に記録された制御情報マツプ65を基に、有
効な制御情報領域を判断しても良い。
際、制御情報領域内に記録された情報書込み時刻の遅い
方としたが、制御情報マツプ65をプロセス完了情報内
に記録し、回復処理を行う際履歴情報ファイル13Aを
履歴情報取得類と逆順に読み、最初に発見したプロセス
完了情報内に記録された制御情報マツプ65を基に、有
効な制御情報領域を判断しても良い。
なお、上記実施例においては、常駐テーブルをメインメ
モリに記憶する例を示したが、本発明はこれに限定され
るべきものではないことは言うまでもない。
モリに記憶する例を示したが、本発明はこれに限定され
るべきものではないことは言うまでもない。
〔発明の効果〕
以上述べた如く、本発明によれば、常駐テーブルを使用
してトランザクション処理を行う情報処理システムにお
いて、チェックポイント時に常駐テーブルの全内容を不
揮発性記憶媒体に取得する必要がないため、チェックポ
イン1一時のシステム性能が低下することがなく、柔軟
なシステム設計が可能になるとともに、また、障害発生
時におけるシステム回復処理においても、処理時間を大
幅に減少させることが可能であり、全体の効率を向上さ
せた常駐テーブルの内容保証方式を実現できるという顕
著な効果を奏するものである。
してトランザクション処理を行う情報処理システムにお
いて、チェックポイント時に常駐テーブルの全内容を不
揮発性記憶媒体に取得する必要がないため、チェックポ
イン1一時のシステム性能が低下することがなく、柔軟
なシステム設計が可能になるとともに、また、障害発生
時におけるシステム回復処理においても、処理時間を大
幅に減少させることが可能であり、全体の効率を向上さ
せた常駐テーブルの内容保証方式を実現できるという顕
著な効果を奏するものである。
第1図は本発明の一実施例の動作フローチャート、第2
図は実施例のシステム全体構成図、第3図はメモリ内容
を示す図、第4図は具体例を示す図、第5図は本発明の
他の実施例を示すシステム構成図、第6図はメモリの内
容を示す図、第7図は具体例を示す図、第8図は動作フ
ローチャートである。 11、 IIA : CPU/メモリ、13.13A
=MI歴情報ファイル、14.14A :不揮発性記憶
媒体、141:制御情報領域、142:常駐テーブル保
証領域、21、21A :メモリ、22:常駐テーブル
群、23:更新ページ管理テーブル、24:障害回復ペ
ージ・ビットマツプ、25:更新前情報バッファ、 5
1.52゜71〜73ニドランザクジヨン、61:ペー
ジマツプ、62ニスロツト使用マツプ、63:カレント
情報リスト、64:履歴情報リスト、65:制御情報マ
ツプ。 第 2 図 第 3 図 L)1 第 4 図
図は実施例のシステム全体構成図、第3図はメモリ内容
を示す図、第4図は具体例を示す図、第5図は本発明の
他の実施例を示すシステム構成図、第6図はメモリの内
容を示す図、第7図は具体例を示す図、第8図は動作フ
ローチャートである。 11、 IIA : CPU/メモリ、13.13A
=MI歴情報ファイル、14.14A :不揮発性記憶
媒体、141:制御情報領域、142:常駐テーブル保
証領域、21、21A :メモリ、22:常駐テーブル
群、23:更新ページ管理テーブル、24:障害回復ペ
ージ・ビットマツプ、25:更新前情報バッファ、 5
1.52゜71〜73ニドランザクジヨン、61:ペー
ジマツプ、62ニスロツト使用マツプ、63:カレント
情報リスト、64:履歴情報リスト、65:制御情報マ
ツプ。 第 2 図 第 3 図 L)1 第 4 図
Claims (1)
- 【特許請求の範囲】 1、メモリ内に常駐化させた常駐テーブルを使用したト
ランザクション処理を行う情報処理システムにおいて、
前記常駐テーブル群を任意の入出力単位に分割し、シス
テム開始時、前記常駐テーブル内容が不揮発性記憶媒体
に格納されていない場合に、その内容を前記不揮発性記
憶媒体に書込み、トランザクション終了時に当該トラン
ザクションが更新した常駐テーブルの更新前情報と、当
該トランザクションが更新した常駐テーブル部分が含ま
れる入出力単位を更新した他のトランザクションの当該
入出力単位の更新前履歴情報とを履歴情報ファイルに取
得し、この後、当該入出力単位を高速ランダム・アクセ
ス可能な不揮発性記憶媒体に書込み、システム障害時に
、前記不揮発性記憶媒体に格納した常駐テーブル内容を
メモリ内に読込み、未完了トランザクションによる更新
部分を更新前情報により回復することを特徴とする常駐
テーブルの内容保証方式。 2、メモリ内に常駐化させた常駐テーブルを使用したト
ランザクション処理を行う情報処理システムにおいて、
前記常駐テーブル群を任意の入出力単位に分割し、シス
テム開始時、前記常駐テーブル内容が不揮発性記憶媒体
に格納されていない場合に、その内容を前記不揮発性記
憶媒体に書込み、このうち、トランザクション終了時に
当該トランザクションが更新した入出力単位について、
未完了トランザクションにより更新されていない入出力
単位は前記不揮発性記憶媒体に書込み、未完了トランザ
クションにより更新された入出力単位はその更新後履歴
情報を履歴情報ファイルに取得し、システム障害時に前
記不揮発性記憶媒体に格納した常駐テーブル内容をメモ
リ内に読込み、このうち、未完了トランザクションが更
新していたために前記不揮発性記憶媒体に反映されてい
ない完了トランザクションの入出力単位の更新部分を、
常駐テーブル更新後履歴情報を用いて更新してシステム
の論理的一貫性を回復することを特徴とする常駐テーブ
ルの内容保証方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61280039A JPS63133240A (ja) | 1986-11-25 | 1986-11-25 | 常駐テ−ブルの内容保証方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61280039A JPS63133240A (ja) | 1986-11-25 | 1986-11-25 | 常駐テ−ブルの内容保証方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63133240A true JPS63133240A (ja) | 1988-06-06 |
Family
ID=17619445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61280039A Pending JPS63133240A (ja) | 1986-11-25 | 1986-11-25 | 常駐テ−ブルの内容保証方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63133240A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03154939A (ja) * | 1989-11-13 | 1991-07-02 | Nec Corp | データベースの階層化格納制御方式 |
JPH04229344A (ja) * | 1990-04-30 | 1992-08-18 | Internatl Business Mach Corp <Ibm> | 持続性があり再起動可能なカーソルを用いた順次バッチ・アプリ ケーションを支援するための方法 |
WO1993003436A1 (en) * | 1991-08-06 | 1993-02-18 | Fujitsu Limited | Method and apparatus for reducing lock period of shared buffer |
JPH05197598A (ja) * | 1991-06-18 | 1993-08-06 | Digital Equip Corp <Dec> | トランザクション処理方法及び装置 |
JPH0887510A (ja) * | 1994-09-19 | 1996-04-02 | Hitachi Ltd | デ−タベ−ス管理方法 |
US5715447A (en) * | 1991-08-06 | 1998-02-03 | Fujitsu Limited | Method of and an apparatus for shortening a lock period of a shared buffer |
-
1986
- 1986-11-25 JP JP61280039A patent/JPS63133240A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03154939A (ja) * | 1989-11-13 | 1991-07-02 | Nec Corp | データベースの階層化格納制御方式 |
JPH04229344A (ja) * | 1990-04-30 | 1992-08-18 | Internatl Business Mach Corp <Ibm> | 持続性があり再起動可能なカーソルを用いた順次バッチ・アプリ ケーションを支援するための方法 |
JPH05197598A (ja) * | 1991-06-18 | 1993-08-06 | Digital Equip Corp <Dec> | トランザクション処理方法及び装置 |
WO1993003436A1 (en) * | 1991-08-06 | 1993-02-18 | Fujitsu Limited | Method and apparatus for reducing lock period of shared buffer |
US5715447A (en) * | 1991-08-06 | 1998-02-03 | Fujitsu Limited | Method of and an apparatus for shortening a lock period of a shared buffer |
JPH0887510A (ja) * | 1994-09-19 | 1996-04-02 | Hitachi Ltd | デ−タベ−ス管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5499367A (en) | System for database integrity with multiple logs assigned to client subsets | |
US5043871A (en) | Method and apparatus for database update/recovery | |
US5638508A (en) | Method and a system for processing a log record | |
US5561795A (en) | Method and apparatus for audit trail logging and data base recovery | |
US4961134A (en) | Method for minimizing locking and reading in a segmented storage space | |
US6311193B1 (en) | Computer system | |
JP3485938B2 (ja) | 不揮発性半導体メモリ装置 | |
JP5160006B2 (ja) | 論理フラッシュメモリ装置を用いて原子的更新を実行する方法および装置 | |
US5497472A (en) | Cache control method and apparatus for storing data in a cache memory and for indicating completion of a write request irrespective of whether a record to be accessed exists in an external storage unit | |
US6636941B1 (en) | Enhanced stable disk storage | |
CN107665219B (zh) | 一种日志管理方法及装置 | |
CN110515705B (zh) | 可扩展的持久性事务内存及其工作方法 | |
US20080162591A1 (en) | Method of Logging Transactions and a Method of Reversing a Transaction | |
CN111414320B (zh) | 基于日志文件***的非易失内存构建磁盘cache的方法及*** | |
JPS63133240A (ja) | 常駐テ−ブルの内容保証方式 | |
JPS62245348A (ja) | データベース更新方法 | |
CN111506458A (zh) | 一种提升f2fs文件***事务性能的方法、模块及存储*** | |
WO1993003436A1 (en) | Method and apparatus for reducing lock period of shared buffer | |
JPH03134747A (ja) | プログラムの動的制御システムおよびその方法 | |
JPS63195755A (ja) | 主記憶装置上の情報の内容保証方式 | |
JPS62245347A (ja) | データベースシステムおよびその処理方法 | |
EP0881570A1 (en) | Database recovery system | |
JP3614886B2 (ja) | ファイルシステム | |
US5594909A (en) | File I/O control device writing blocks to faster device first and canceling exclusive lock as each block is written | |
JPS63259733A (ja) | 揮発性記憶装置常駐情報の内容保証方式 |