JPH04155548A - ログ管理・復旧処理方式 - Google Patents

ログ管理・復旧処理方式

Info

Publication number
JPH04155548A
JPH04155548A JP2280910A JP28091090A JPH04155548A JP H04155548 A JPH04155548 A JP H04155548A JP 2280910 A JP2280910 A JP 2280910A JP 28091090 A JP28091090 A JP 28091090A JP H04155548 A JPH04155548 A JP H04155548A
Authority
JP
Japan
Prior art keywords
log
time
page
transaction
record
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
JP2280910A
Other languages
English (en)
Inventor
Kazuhiko Saito
一彦 斉藤
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2280910A priority Critical patent/JPH04155548A/ja
Publication of JPH04155548A publication Critical patent/JPH04155548A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 レコード単位の排他制御機能を持つデータベース管理シ
ステムであって、更新の時間的順序を示す論理時刻を、
データベースのページ内およびログ内に持つことにより
5障害時におけるデータベースのページの復旧を論理時
刻に基づいて行うシステムにおけるログ管理・復旧処理
方式に関し。
レコード単位のトランザクション排他を使用したときで
も1通常の業務時の性能を悪化させることなく、復旧処
理時における時系列ログデータによるページ操作順を保
証することを目的とし。
トランザクションの完了時に、トランザクションの完了
の順番でログを不揮発性記憶装置に書き出して管理する
ログ管理手段と、データベースの復旧時に、不揮発性記
憶装置に書き出されているログを論理時刻の順番に並び
換え、並び換えたログの順番でデータベースのページを
復旧する復旧処理手段とを備えるように構成する。
〔産業上の利用分野〕
本発明は、レコード単位の排他制御機能を持−データベ
ース管理システムであって、更新の時^的順序を示す論
理時刻を、データベースのベーう内およびログ内に持つ
ことにより、障害時にお番:るデータベースのページの
復旧を論理時刻に基ていて行うシステムにおけるログ管
理・復旧処理ブ式に関する。
一般に、オンラインリアルタイムのトランザクションに
よるデータベースアクセスでは、応答性能が要求される
。また、障害発生時には、ログデータなどを使用するこ
とにより5データヘースを障害発生前の状態に復旧する
ことが必要とされる〔従来の技術〕 一触にデータベースの障害時における復旧は。
データベースの更新時に取得した更新前ログ/更新後ロ
グによって行う。この復旧のためのログの採取を、少量
のログで済むようにした方式とじて例えば特開昭60〜
220438号公報(発明のン   名称二ログ制御方
式)に示されているような方式り   が知られている
。この方式では、データベースの2   各ページごと
に、更新レベルを独立に示す論理時1   刻情報を持
つようにし、そのページを更新した際f   のログに
、ページを指定する情報と論理時刻情報とを合わせて設
定してお(9これにより、ログとページの状態の正確な
対応を可能とし、あいまいダンプ(fuzzy dum
p)を許す環境下でも、他の従来技術に比べて、はるか
に少ないログで済むようにしている。
従来、このようなデータベース管理システムで。  は
、トランザクション間のアクセス競合によるデータ矛盾
の発生を防ぐために2種々のレベルで排他制御を行って
いるが、ページごとに論理時刻を持たせるような場合、
ベージ単位でトランザクションの排他制御を行っていた
第4図はその従来技術の例を示している。
トランザクションTRNIは、データベース10におけ
るページP中のレコードAを更新し、トランザクション
TRN2は、同しページP中のレコードBを更新するも
のとする。
トランザクションTRN1は、まずページPについてト
ランザクションの排他権を獲得する。排他権を獲得した
ならば、レコードAを更新スル。
その際、更新前ログ/更新後ログをバッファ(図示省略
)に収集しておく、データベース1oのページには、更
新の時間的順序を示すための論理時刻(例えば、更新回
数の値)tlを設定する。
このトランザクションTRN 1のコミット時(com
mit時)に、バッファ上のログは、磁気ディスク装置
やt源バックアップ付きメモリなどによって構成される
ログ格納用不揮発性記憶装置18に書き出され、ページ
Pに対する排他制御が解除される。
なお、コミットとは、トランザクションによる処理要求
が完遂されたため、トランザクションの終了時にトラン
ザクション内で行った更新、追加。
削除などのデータを確定させ、有効化させることをいう
一方、トランザクションTRN2が、レコードBを更新
するために、ページPに対する排他要求を出す、このと
き、すでにトランザクションTRN1が排他権を獲得し
ていれば、トランザクションTRN2の処理は、トラン
ザクションTRN 1の処理が終了し、ページPに対す
る排他権が解除されるまで待たされる。
トランザクションTRNIがページPの排他解除を行い
、トランザクションTRN2がその排他権を獲得すると
、レコードBを更新し、そのログ(Log−B )を収
集する。トランザクションTRN2のコミット時に、ロ
グ(Log−B)  19をログ格納用不揮発性記憶装
置18に書き出し、ページPのトランザクション排他を
解除する。
障害によって、データベース10を障害前の状態に復旧
する必要が住じたときには、ログI9を読み出し、更新
の時間的順序を示す論理時刻El。
t2に従って、データベース10のページPを復旧する
ページ単位でトランザクション排他を行ってぃる場合に
は、ログ19が出力される順番は、論理時刻の順番とな
っており、ログの格納を追記型で行うような場合に、論
理時刻の順番が逆転することはない。
〔発明が解決しようとする課題〕
トランザクション間の排他制御を、大きな単位で行うと
、排他解除待ちになる可能性が大きくなり、衝突した場
合に一方のトランザクションの処理は、長時間待たされ
ることになる。そこで、制御は複雑化するが1階層的な
排他制御を行ったり。
できるだけ小さな単位で排他制御を行うことが考えられ
ている。最小の排他制御の単位としては。
レコード単位の排他制御が考えられる。
第5図は、レコード単位のトランザクション排他を行っ
たとした場合の従来技術による問題点説明図である。
■ トランザクションTRN 1は、レコードAを更新
するために、レコードAに対してトランザクションの排
他権を獲得し、ページP中のレコードAを更新する。こ
のとき、更新の論理時刻tlをページP内に格納する。
■ 一方、トランザクションTRN2が、同じページP
中にあるレコードBを更新するため、レコードBに対す
るトランザクションの排他権を獲得し、レコードBを更
新する。更新の論理時刻は。
t2(ただし、この例ではt2>tl)である。
同じページPであっても、排他の単位であるレコードが
異なるので、トランザクションTRN1とトランザクシ
ョンTRN2とは、同時に走行可能である。
■ トランザクションTRN2が先に処理を完了し、ロ
グ格納用不揮発性記憶装置18にログ(L。
g−B)の書き出しを行う。
■ その後、トランザクションTRN1が、コミットの
際にログ(Log−A)の書き出しを行う。
以上のようなシーケンスでは、更新の順番とログ19の
書き出しの順番とが逆転することになる。
障害発生により、復旧処理部50が、データベース10
のページPを復旧しようとした場合、ログ19の順番で
復旧処理を行うので、ログ(Log−B)による復旧を
行うと、ページPの論理時刻はt2になる0次に、ログ
(Log−A )による復旧を試みるが、その論理時刻
t1は、ページPの論理時刻t2より古いので、ログ(
Log−A)は棄却される。
ページ内およびログ内に論理時刻を持つログによる復旧
処理を行うシステムの場合、ページ排他を前提としてい
るときには、あるページに対して発生するログは、第4
図に示すように、そのページの更新に対応した時系列デ
ータとして保証される。
しかし、レコード単位の排他を前提とする場合には、第
5図に示すように、あるページに対するログの発生順番
は、必ずしもそのページの更新に対応した時系列データ
として保証されるとは限らない、そのため、復旧処理で
のページの復元ができなくなるという問題がある。
一方、トランザクションのコミット時におけるログの書
き出しの際に、ログの発生順を保証するため、追記型で
ログを格納するのではなく、ログを時系列に従って挿入
するような処理を行うとすると、ログの書き出し処理の
オーバヘッドが大キくなり9通常の業務時における処理
効率が低下するという問題がある。
本発明は上記問題点の解決を図り、レコード単位のトラ
ンザクション排他を使用したときでも。
通常の業務時の性能を悪化させることなく、復旧処理時
における時系列ログデータによるページ操作順を保証す
ることを目的としている。
〔課題を解決するための手段〕
本発明は、第1図に示すように、レコード単位でトラン
ザクションの排他制御を行うデータベース管理システム
において、トランザクションの完了時に、トランザクシ
ョンの完了の順番で、論理時刻を持つログ19をログ格
納用不揮発性記憶装置18に書き出して管理するログ管
理部16と。
データベース10が障害になったときに、ログ格納用不
揮発性記憶装21Bに書き出されている口グ19を論理
時刻の順番に並び換え、並び換えたログ19の順番でデ
ータベース10′のページ12′を復旧する復旧処理部
20とを備える。
〔作用〕
本発明は、(i)更新の時間的順序を示す論理時刻を含
めたページ内管理情報の更新に対してシリアライズする
。(ii)また2時系列データとして管理されていない
ログを、復旧処理時に事前にログ内の論理時刻に基づき
ソートする。これによす、トランザクション終了時のオ
ーバヘッドを増すことなく、ページ単位の排他時と同様
の復旧処理が通用できるようになる。
〔実施例〕
第1図は本発明の構成例、第2図は本発明の一実施例に
係るログの収集・格納の例、第3図は本発明の一実施例
に係る復旧処理部の処理の例を示す。
第1図において、10はデータベース、11はデータベ
ースlOにおける入出力の単位となるページ、12は各
ページごとの更新の時間的順序を示す論理時刻が格納さ
れる論理時刻格納域、13は処理対象となるレコード、
14はデータベース10に対するアクセス要求を出すト
ランザクション処理部、15はデータベース10に対す
るアクセスを制御するアクセス制御部、16は更新の履
歴情報であるログを管理するログ管理部、17は収集し
たログを一時的に格納しておくログバッファ、18はデ
ィスク装置または電源バックアップ付きのメモリなどで
構成されるログ格納用不揮発性記憶装置819は論理時
刻と更新に関する情報を持つログ、20はデータベース
10の障害時にその復旧を行う復旧処理部を表す。
以下、第1図に示す■〜[相]に従って説明する。
■ トランザクション処理部I4は、データベース10
中のレコード13を更新するとき、レコード13に対し
てトランザクションの排他権を獲得し、アクセス制御部
15に対してレコード更新要求を出す。
■ アクセス制御部15は、指定されたページ11のレ
コード13を更新する。このとき、ページ11内の論理
時刻格納域12にある論理時刻を更新する。
■ レコード13の更新にあたって、ログ管理部16に
対し、更新後ログ/更新前ログの収集を依鯨する。
■ ログ管理部16は、ログバッファ17にレコード1
3についての更新後ログ/更新前ログを蓄積する。
■ トランザクション処理部14の処理が終了し。
コミット(CO■−1t)する際に、ログの書き出しを
ログ管理部16に依鯨する。
■ ログ管理部16は、ログバッファ17からトランザ
クション処理部14に関するログを読み出す。
■ 読み出したログを、ログ格納用不揮発性記憶装置1
8に書き出す。
■ 本体系障害または周辺装置の障害などにより。
データベースlOの復旧が必要になると、復旧処理部2
0が呼び出される。
■ 復旧処理部20は、ログ格納用不揮発性記憶装置1
8からログ19を読み出し、各ログ19の論理時刻に従
って、ログ19をソートする。
[相] ソートしたログ19の順番で、データベース1
0′のページ12′を復旧する。
第2図は、トランザクション処理部(TRN1)14−
1およびトランザクション処理部(TRN2)14−2
が、データベース10の同一ページll中にある異なる
レコード(A、B)13を処理する例を示している。こ
れらは、レコード排他により、トランザクションとして
並行処理可能になっている。トランザクション処理部1
4−1は、レコードAの挿入を行い、トランザクション
処’fMHz−2は、レコードBについてレコード長を
拡大する更新を行うものとする。
トランザクション処理部14−1は、レコードAに対し
てトランザクションの排他権を獲得した後、ページ11
に対するロックを行い、ページ内の論理時刻を1例えば
toからtiに更新する。
そして、ページ11内管理情報を変更し、レコードへの
挿入を行う、その更新後、ページ11のロックを解除す
る。
また、論理時刻L1でレコードAの挿入ログL。
g−Aを収集する。
トランザクション処理部14−1は、コミット時に、収
集しておいたログLog−Aをログ格納用不揮発性記憶
装置18に格納し、レコードAに対するトランザクショ
ンの排他を解除する。
トランザクション処理部14−2は、レコードBに対し
てトランザクションの排他権を獲得した後、ページ11
に対するロックを行い、ページ内の論理時刻を1例えば
tlからt2に更新する。
そして、ページ11内管理情報を変更し、レコードBの
レコード長拡大処理を行う。その更新後。
ページ11のロックを解除する。
また、論理時刻t2でレコードBの更新ログL。
E−Bを収集する。
トランザクション処理部14−2は、コミット時に、収
集しておいたログLog−Bをログ格納用不揮発性記憶
装置18に格納し、レコードBに対するトランザクショ
ンの排他を解除する。
ログ格納用不揮発性記憶装置18へのログの書き込みは
、ページ11に対する操作の順番とは無関係に5コミツ
トによってログ19の書き出しが必要になった順番に行
われる。したがって、第2図に示す■〜■の順番に処理
が実行された場合。
ログ格納用不揮発性記憶袋W18内の時系列ログデータ
は、ページ11の更新順番とは異なることになる。この
例では、ログLog−Bが5 ログLog−Aより先に
書き出されている。
第3図は、第1回に示す復旧処理部20の処理の例を示
している。
第2図に示す更新の後、データベース10が障害になり
、復旧処理部20が呼び出されたとする。
復旧処理部20は、第3図(a)に示すように、ログ格
納用不揮発性記憶装置18からログ19を読み出し、第
3図(b)に示すように、論理時刻の昇順にログ19を
ソートする。次に、第3図(C)に示す処理により、ソ
ートしたログ19の順番にページ11の復旧を行う、こ
の(C)に示す処理は、ページ単位に排他制御を行って
いるときの従来の復旧処理と同様な処理である。他のペ
ージについての復旧も同様である。
以上のように、復旧処理時に時系列ログデータを論理時
刻によってソートすることにより、ページに対する操作
の順番が保証でき、コミット時のオーバヘッドを悪化さ
せることなく、レコード単位の排他でも論理時刻による
データベース10の復旧を行うことができる。
〔発明の効果〕
以上説明したように2本発明によれば、レコード単位の
トランザクション排他を使用したときのログ管理におけ
る性能劣化を防ぎ、かつ復旧処理について簡易化するこ
とができるようになる。
【図面の簡単な説明】
第1図は本発明の構成例。 第2図は本発明の一実施例に係るログの収集・格納の例
。 第3図は本発明の一実施例に係る復旧処理部の処理の例
。 第4図は従来技術の例。 第5図は従来技術による問題点説明図を示す。 図中、10はデータベース、11はページ、12は論理
時刻格納域、13はレコード、14はトランザクション
処理部、15はアクセス制御部。 16はログ管理部、17はログバッファ、18はログ格
納用不揮発性記憶装置、19はログ、20は復旧処理部
を表す。

Claims (1)

  1. 【特許請求の範囲】 レコード単位の排他制御機能を持つデータベース管理シ
    ステムであって、更新の時間的順序を示す論理時刻を、
    データベースのページ内およびログ内に持つことにより
    、障害時におけるデータベースのページの復旧を論理時
    刻に基づいて行うシステムにおけるログ管理・復旧処理
    方式において、トランザクションの完了時に、トランザ
    クションの完了の順番でログを不揮発性記憶装置に書き
    出して管理するログ管理手段(16)と、 データベースの復旧時に、不揮発性記憶装置に書き出さ
    れているログを論理時刻の順番に並び換え、並び換えた
    ログの順番でデータベースのページを復旧する復旧処理
    手段(20)とを備えたことを特徴とするログ管理・復
    旧処理方式。
JP2280910A 1990-10-19 1990-10-19 ログ管理・復旧処理方式 Pending JPH04155548A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2280910A JPH04155548A (ja) 1990-10-19 1990-10-19 ログ管理・復旧処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2280910A JPH04155548A (ja) 1990-10-19 1990-10-19 ログ管理・復旧処理方式

Publications (1)

Publication Number Publication Date
JPH04155548A true JPH04155548A (ja) 1992-05-28

Family

ID=17631647

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2280910A Pending JPH04155548A (ja) 1990-10-19 1990-10-19 ログ管理・復旧処理方式

Country Status (1)

Country Link
JP (1) JPH04155548A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006235763A (ja) * 2005-02-22 2006-09-07 Ricoh Co Ltd データ送信装置、データ収集装置、データ送信方法、データ収集方法、データ送信プログラム、データ収集プログラムおよびコンピュータ読み取り可能な記録媒体
WO2015174062A1 (ja) * 2014-05-16 2015-11-19 日本電気株式会社 情報処理装置、情報処理方法およびプログラム記録媒体

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006235763A (ja) * 2005-02-22 2006-09-07 Ricoh Co Ltd データ送信装置、データ収集装置、データ送信方法、データ収集方法、データ送信プログラム、データ収集プログラムおよびコンピュータ読み取り可能な記録媒体
WO2015174062A1 (ja) * 2014-05-16 2015-11-19 日本電気株式会社 情報処理装置、情報処理方法およびプログラム記録媒体

Similar Documents

Publication Publication Date Title
EP0351387B1 (en) Minimizing locking and reading in a segmented storage space
JP2531776B2 (ja) デ―タベ―スを回復する方法
US6298425B1 (en) Computer disk management system using doublet A-B logging
US6898688B2 (en) Data management appliance
US5287496A (en) Dynamic, finite versioning for concurrent transaction and query processing
US7340645B1 (en) Data management with virtual recovery mapping and backward moves
US4498145A (en) Method for assuring atomicity of multi-row update operations in a database system
JPH0812631B2 (ja) データベース・トランザクション及び照会処理システム
EP1739535A2 (en) File system storing transaction records in flash-like media
US5740434A (en) System for maintenance of database integrity
US20030131253A1 (en) Data management appliance
CN115145697B (zh) 数据库事务的处理方法、装置及电子设备
US20060004846A1 (en) Low-overhead relational database backup and restore operations
JPH04155548A (ja) ログ管理・復旧処理方式
JPH06149485A (ja) データ完結性保証処理方法
JPH0158533B2 (ja)
JP2503289B2 (ja) デ―タベ―ス管理処理方式
JP2001229063A (ja) データ管理システム
JPS62245348A (ja) データベース更新方法
JP2503288B2 (ja) デ―タベ―ス処理方式
JP2708610B2 (ja) データベースのログ管理処理方式
JPH07200378A (ja) ライブラリファイル管理装置
JP3027782B2 (ja) データベース回復方式
CN118012669A (zh) 一种分布式文件系统的文件元数据恢复系统与方法
JPH0277950A (ja) データベース処理システム