JPH01297741A - データベースシステムの動的チェックポイント制御方式 - Google Patents

データベースシステムの動的チェックポイント制御方式

Info

Publication number
JPH01297741A
JPH01297741A JP63128107A JP12810788A JPH01297741A JP H01297741 A JPH01297741 A JP H01297741A JP 63128107 A JP63128107 A JP 63128107A JP 12810788 A JP12810788 A JP 12810788A JP H01297741 A JPH01297741 A JP H01297741A
Authority
JP
Japan
Prior art keywords
checkpoint
user program
database
establishment
check point
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
JP63128107A
Other languages
English (en)
Inventor
Koji Fukuda
福田 光司
Hiroko Sakuma
佐久間 裕子
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 Corp
Original Assignee
NEC Corp
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 Corp filed Critical NEC Corp
Priority to JP63128107A priority Critical patent/JPH01297741A/ja
Publication of JPH01297741A publication Critical patent/JPH01297741A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデータベースシステムのチェックポイント制御
方式に関し、特にデータベースシステムの状態に応じて
チェックポイント確立点を動的に制御する動的チェック
ポイント制御方式に関するものである。
〔従来の技術〕
従来、C0BOL等の母言語からDMLインタフェイス
を用いてデータベースの操作を行うシステムであって、
データベースに対してジャーナル採取方式の間接更新を
行い、且つ、間接更新内容を実際のデータベースに反映
させる制御および更新処理によって発生したデータベー
スのロックの解除を利用者プログラムからのチェックポ
イント確立命令によって行う従来のデータベースシステ
ムにおいては、−足回数のデータベースアクセスを行う
毎に上記のチェックポイント確立命令を発行するような
機構を利用者プログラムに持たせる方式のチェックポイ
ント制御方式が採用されている。
〔発明が解決しようとする課題〕
ところで、チェックポイントの確立が行われると、前述
したように間接更新内容のデークヘースへの反映、更新
処理によって発生したデータヘースのロックの解除が行
われる。従って、例えば成る利用者プログラムによって
ロックされている資11fflを他の利用者プログラム
が待っている場合には、速やかにチェックポイントの確
立を行って口・ツクを解除した方が、利用者プログラム
の処理速度も向上するし所謂デッドロックの発生も少な
くできる。また、チェックポイントの確立点を最適化す
ることでジャーナル採取用の資源の有効利用も可能とな
る。即ち、チエツクポインI・の確立は、本来データベ
ースシステムの状fGに応じて行うことが望ましい。し
かるに、従来のチェックポイント制御方式は、利用者プ
ログラムにおいてチエツクポイン1、を確立するタイミ
ングを静的にプログラミングしているので、チェックポ
イントの確立は常に同しようなタイミングで行われるこ
とになり、データベースシステムの状態に応してチェッ
クポイント決定手段を動的に制御することGコできない
本発明はこのような事情に鑑めで為されたものであり、
その目的は、チェックポイントの確立をデータベースシ
ステムの状態に応じて動的に制御する動的チェックポイ
ン1〜制御方式を提供することにある。
(R題を解決するだめの手段〕 本発明は上記の目的を達成するために、データヘースに
対してジャーナル採取方式の間接更新を行うと共に、間
接更新内容を実際のデータヘースに反映させる制御およ
び更新処理により発生したデータヘースのロックの解除
制御を利用者プログラムからのチエツクポインl−61
立命令によって行うデータベース管理部を含むデータベ
ースシステムにおいて、データベースシステムの状態ラ
ブ−′クヘースシステム状態管理テーブルにおいて管理
し、この管理内容に基づいて最適なチT−’)クボイン
I・の確立点を前記利用者プログラムに通知するチェッ
クポイント決定手段を前記データベース管理部に設け、
前記利用者プログラムは前記チェックポイント決定手段
からの通知に応答して前記チj−’)クボイント確立命
令を発行するように構成されている。
〔作用〕
本発明のデータベースシステムの動的チェックポイント
制御方式においては、データベース管理部に設けられた
チェックポイント決定手段が、データベースシステムの
状態をデータベースシステム状態管理テーブルにおいて
管理すると共にその管理内容に基づいて最適なチエツク
ポイン1−の確立点を利用者プログラムに通知し、利用
者プログラムが、その通知に応答してチェックポイント
確立命令を発行すると、データベース管理部が、ジャー
ナル採取資源に格納された間接更新内容を実際のデータ
ヘースに反映させる制御および更新処理により発生した
データヘースのロックの解除制御を行・う。
〔実施例〕
次に、本発明の実施例について図面を参照して詳細に説
明する。
第1図は本発明の動的チエツクポインI・制御方式を適
用したデータベースシステムの一例を示すブロック図で
あり、データベース管理部(データベースモニタ)1と
、チェックポイントジャーナルファイル2と、データヘ
ースファイル3と、利用者プログラム4とで構成されて
いる。データベース管理部1には、チエツクポイン1−
決定手段11と、ジャーナルファイルアクセス手段12
と、DMLによるデータベースアクセス手段13とが含
まれ、利用者プログラム4には、チエツクポインl−F
ffi立要求手段41と、利用者のデータヘースアクセ
ス部42とが含まれている。
データベースアクセス手段13は、次に示すような動作
を行う。
■利用者プログラム4からD M Lによるデータヘー
スのアクセス要求を受けると、デークヘースの参照およ
び更新を行う。但し、アクセス要求が更新要求のときは
、実際のデータヘースの更新ば行わず、ジャーナルファ
イルアクセス手段12に対して出力要求を行い、更新情
報をチェックポイントジャーナルファイル2へ出力させ
る。
■参照要求または更新要求のあったレコードに対し、他
の利用者プログラムから更新不可能な状態(参照ロック
状態と称す)または参照も更新も不可能な状態(更新ロ
ック状態と称す)にする。
■同時に2つ以上の利用者プログラムがデータヘースを
参照等し、お互いのレコードに対して待ち合わせが生じ
たとき、即ちデッドロックが生したとき、これを検出し
て、その利用者プログラムにその旨を通知する。なお、
このデッドロック発生通知を受けた利用者プログラムは
、チェックポイントジャーナルファイル2に残っている
更新情報を全て無効にする命令(ロールハック命令)を
発行し、直ri′l」のチエツクポインl−4’f立点
から処理を再開するものである。
■利用者プログラム4からロールハック命令を受けると
、ジャーナルファイルアクセス手段12に対しチェック
ポイントジャーナルファイル2中の該当する更新情報を
無効にする要求を行い、また、その利用者プログラム4
によって更新ロックおよび参照ロックされていた全ての
レコードのロックを解除する。
■利用者プログラム4からチエツクポインl−確立命令
を受りると、ジャーナルファイルアクセス手段12に対
し、チェックポイントジャーナルファイル2上の更新情
報をデータベースファイル3に反映する要求を発行し、
また、その利用者プログラム4によって更新ロックおよ
び参照ロックされていた全てのレコードのロックを解除
し、この時点を新しいチェックポイント確立点とする。
以上の■〜■は従来から行われている処理であり、本実
施例では、データヘースアクセス手段13はそれに加え
て次の処理■を行う。
■チェックポイント決定手段11がデータヘースシステ
ムの状態を管理できるように、データヘースを使用する
利用者プログラム4のユーザID。
デッドロックの発生の有無、トランザクション処理回数
、資源待ちの有無、ロールバック命令の発生、チエツク
ポインl−確立命令の発生等の情報をチエツクポインI
・決定手段11に通知する。
また、第1図のジャーナルファイルアクセス手段12も
、チエツクポインI・決定手段11がデータヘースシス
テムの状態を管理できるように、チェックポイントジャ
ーナルファイル2の使用量を通知する機能を有する。
そして、チェックポイント決定手段11は、ジャーナル
ファイルアクセス手段12およびデータヘースアクセス
手段13から通知される各種情報に基づいてデータヘー
スシステムの最新の状態ヲ、第1図には図示しないデー
タベースシステム状態管理テーブルにおいて管理してい
る。
第2図はチェックポイント決定手段11が有するデータ
ベースシステム状態管理テーブルの内容例を示す。同図
に示すように、データベースシステム状態管理テーブル
5には、ベースデータを使用している利用者プログラム
毎に、そのユーザ■D51.デッドロック発生の有無5
2.総トランザクション処理回数53.総ジャーナルフ
ァイル使用量54,1チ工ツクポイント間のトランザク
ション処理回数55.1チ工ツクポイント間のジャーナ
ルファイル使用量56および資源待ちの有無57が記憶
される。チェックポイント決定手段11は、利用者プロ
グラム4のデータベースファイルのオープン時にそのユ
ーザID51をデータベースシステム状態管理テーブル
5に登録し、その後、後述するように利用者プログラム
4からトランザクション処理の切れ目の通知を受ける毎
にジャーナルファイルアクセス手段12からチェックポ
イントジャーナルファイル2の使用量を受は取って総ジ
ャーナルファイル使用量54および1チ工ツクポイント
間のジャーナルファイル使用量56を計算して更新する
。また、データヘースアクセス手段13からデッドロッ
ク発生通知を受けると、デッドロック発生の有無52を
有り側にする。更に、当該利用者プログラム4の参照ロ
ックまたは更新ロックによって他の利用者プログラムが
待ちに入ったことの通知をデータヘースアクセス手段1
3から受けると、資源待ちの有無57を有り側にする。
また、利用者プログラム4からロールハック命令が発行
されたことの通知をデータベースアクセス手段13から
受りると、デッドロック発生の有無52を有り側にし、
チエツクポインl−III立命令の発行の通知を受ける
と、デッドロック発生の有無52を無し側にすると共に
、1チ工ツクポイント間のトランザクション処理回数5
5およびXチェックポイント間のジャーナルファイル使
用量56を「O」にする。このようにして、チェックポ
イント決定手段11はデータベースシステムの最新の状
態を管理する。そして、チェックポイント決定手段11
は、データヘースシステム状態管理テーブル5の管理内
容に基づき、後述するように利用者プログラム4からト
ランザクション処理の切れ目の通知を受けろと、チェッ
クポイントジャーナルファイル2の利用効率、利用者プ
ログラム4の処理速度が共に向上し、またデータベース
システム内でのデッドロック状態の発生率が少なくなる
ように、最適なチェックポイント確立点を決定し、利用
者プログラム4に通知するものである。
第3図はチェックポイント決定手段11で行われるチェ
ックポイント確立判定処理の一例を示す。
この例では、ステップS1で当該利用者プログラム4の
参照ロックまたは更新ロックによって資源待ちをしてい
る他の利用者プログラムが存在すると判定されるか、ス
テップS2でデッドロックが発生していると判定される
か、ステップS3およびS4でチェックポイントジャー
ナルファイル2のジャーナルファイル残量が11−ラン
ザクジョン処理当たりの平均ジャーナルファイル使用量
に等しいか或いは少ないと判定されるか、ステップS5
およびS6でチエツクポインI・ジャーナルファイル2
のジャーナル残量が1チ工ツクポイント間における1ト
ランザクション処理当たりの平均ジャーナルファイル使
用量に等しいか或いは少ないと判定された場合、ステッ
プS7でチェックポイントの確立の必要有りを利用者プ
ログラム4に通知し、それ以外のときはチェックポイン
トの確立の必要無しを利用者プログラム4に通知するも
のである。
第4図は利用者プログラム4の内容例を示す流れ図であ
り、ステップS12〜S15およびS19は主にチェッ
クポイント確立要求手段41の処理、それ以外のステッ
プは利用者のデータヘースアクセス部42の処理に相当
する。第4図に示すように、利用者プログラム4は、ス
テップSllでデータヘースファイルのオープンを行っ
た直後のステップS12、およびステップS20でデー
タヘースファイルのクローズを行う直前のステ、。
プS19で、固定的にデータベース管理部1に対しチェ
ックポイント確立命令の発行つまりチェックポイントの
確立を要求するが、それ以外は、一つの利用者のトラン
ザクション処理毎に、トランザクション処理の切れ目を
通知しく513)、データベース管理部1からチェック
ポイントの確立の必要有りの通知を受けたときだけ、チ
ェックポイントの確立要求をデータベース管理部1に出
すものである(Si2.315)。
次に、このように構成された本実施例の動的チェックポ
イント制御方式の動作を説明する。
利用者プログラム4がデータヘースファイル3のオープ
ンを行い(S11.)、チェックポイントの確立要求を
出すと(S12)、データベース管理部1のデータベー
スアクセス手段13ばそれに応答して最初のチェックポ
イントの確立制御を行う。また、チェックポイント決定
手段11ではデータベースシステム状態管理テーブル5
内に利用者プログラム4用の領域が確保され、必要な情
報が登録される。
その後、利用者プログラム4は、ステップ816〜31
13で一つのトランザクシジン処理を実行する毎に、ト
ランザクション処理の切れ目をデータベース管理部1に
通知しく513)、データベース管理部1からチェック
ポイントの確立の必要有りの通知を受けたときに限り、
データベース管理部1のデータベースアクセス手段13
に対しチェックポイント確立要求を出す(S14.31
5)。
チェックポイント決定手段11では、前途したようにデ
ータベースアクセス手段13から逐次通知される情*i
icこ従ってデータベースシステム状態管理テーブル5
の管理情報(52,53,55゜57)を最新の内容に
更新しており、また利用者プログラム4からトランザク
ション処理の切れ目が通知されると、前述したようにジ
ャーナルファイルアクセス手段12から取得した情報に
よってデータベースシステム状態管理テーブル5の管理
情報(54,56)を更新する。そして、第3図のチェ
ックポイント確立判定処理により、利用者プログラム4
が現在のトランザクション処理の切れ目でチェックポイ
ントを確立する必要があるかどうかを決定し、決定結果
を利用者プログラム4Gこ通知する。
この通知を受けた利用者プログラム4は、通知内容がチ
ェックポイントの確立の必要無しを示していれば、その
まま次のトランザクションの処理に入り、チェックポイ
ントの確立の必要有りを示していれば、チエ・7クポイ
ント確立命令を発行して次のトランザクションの処理に
入る。
このようにして利用者プログラム4は、データベース管
理部1のチェックポイント決定手段11から必要有りと
通知されたトランザクション処理の切れ目釘にチェック
ポイントの確立を行いつつトランザクション処理を進め
ていく。そして、ステップS17でトランザクションフ
ァイルの終了を判定すると、最後のチエツクポイン目官
立要求を行い(S19)、データベースファイル3をク
ローズしく520)、処理を終了する。
第5図は本発明の別の実施例のブロック図であり、第1
図と同一符号は同一部分を示し、6はプリコンパイラの
原始プログラム、7はプリコンパイラ及び母言語のコン
パイラ、8ば実行モジュールファイルである。本実施例
では、プリコンパイラ及び母言語のコンパイラ7が、プ
リコンパイラの原始プログラム6からトランザクション
ファイルを認識し、第4図に示すような構造を持つ利用
者プログラム4を自動的に生成して実行モジュールファ
イル8に格納するよう構成したものである。
このような構成によって、データヘースをアクセスする
プログラマはチェックポイント制御を意識することなく
、最大のシステム性能でプログラムを稼動させることが
可能となる。
〔発明の効果〕
以上説明したように、本発明のデータヘースの動的チェ
ックポイント制御方式は、データベースシステムの状態
に応して動的にチェックポイントの確立点を制御するの
で、従来の静的なチェックポイント制御方式に比べ、ジ
ャーナル採取用の資源の利用率の向上、利用者プログラ
ムの処理速度の向上が可能であり、またデータベースシ
ステム内でのデッドロック状態の発生を少なくすること
が可能となる。
【図面の簡単な説明】
第1図は本発明を適用したデータベースシステムの一例
を示すブロック図、 第2図はデータベースシステム状態管理テーブルの構成
例を示す図、 第3図はチェックポイント決定手段11が行うチェック
ポイント確立判定処理例を示す流れ図、第4図は利用者
プログラム4の内容例を示す流れ図および、 第5図は本発明の別の実施例のブロック図である。 図において、 1・・・データヘース管理部 2・・・チェックポイントジャーナルファイル3・・・
データベースファイル 4・・・利用者プログラム 5・・・データベースシステム状態管理テーブル6・・
・プリコンパイラの原始プログラム7・・・プリコンパ
イラ及び母言語のコンパイラ8・・・実行モジュールフ
ァイル 11・・・チェックポイント決定手段

Claims (1)

  1. 【特許請求の範囲】 データベースに対してジャーナル採取方式の間接更新を
    行うと共に、間接更新内容を実際のデータベースに反映
    させる制御および更新処理により発生したデータベース
    のロックの解除制御を利用者プログラムからのチェック
    ポイント確立命令によって行うデータベース管理部を含
    むデータベースシステムにおいて、 データベースシステムの状態をデータベースシステム状
    態管理テーブルにおいて管理し、該管理内容に基づいて
    最適なチェックポイントの確立点を前記利用者プログラ
    ムに通知するチェックポイント決定手段を前記データベ
    ース管理部に設け、前記利用者プログラムは前記チェッ
    クポイント決定手段からの通知に応答して前記チェック
    ポイント確立命令を発行することを特徴とするデータベ
    ースシステムの動的チェックポイント制御方式。
JP63128107A 1988-05-25 1988-05-25 データベースシステムの動的チェックポイント制御方式 Pending JPH01297741A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63128107A JPH01297741A (ja) 1988-05-25 1988-05-25 データベースシステムの動的チェックポイント制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63128107A JPH01297741A (ja) 1988-05-25 1988-05-25 データベースシステムの動的チェックポイント制御方式

Publications (1)

Publication Number Publication Date
JPH01297741A true JPH01297741A (ja) 1989-11-30

Family

ID=14976563

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63128107A Pending JPH01297741A (ja) 1988-05-25 1988-05-25 データベースシステムの動的チェックポイント制御方式

Country Status (1)

Country Link
JP (1) JPH01297741A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222110A (ja) * 2004-02-03 2005-08-18 Hitachi Ltd ストレージサブシステム
US7305584B2 (en) 2003-02-20 2007-12-04 Hitachi, Ltd. Data restoring method and an apparatus using journal data and an identification information

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7305584B2 (en) 2003-02-20 2007-12-04 Hitachi, Ltd. Data restoring method and an apparatus using journal data and an identification information
US7549083B2 (en) 2003-02-20 2009-06-16 Hitachi, Ltd. Data restoring method and an apparatus using journal data and an identification information
US7971097B2 (en) 2003-02-20 2011-06-28 Hitachi, Ltd. Data restoring method and an apparatus using journal data and an identification information
US8423825B2 (en) 2003-02-20 2013-04-16 Hitachi, Ltd. Data restoring method and an apparatus using journal data and an identification information
JP2005222110A (ja) * 2004-02-03 2005-08-18 Hitachi Ltd ストレージサブシステム
JP4551096B2 (ja) * 2004-02-03 2010-09-22 株式会社日立製作所 ストレージサブシステム

Similar Documents

Publication Publication Date Title
Kim et al. Ermia: Fast memory-optimized database system for heterogeneous workloads
US7246123B2 (en) Automatic transaction management
KR940005819B1 (ko) 분산 컴퓨터 데이타베이스에서 지속적 타임스탬프를 위한 시스템 및 방법
US5778388A (en) Method of processing a synchronization point in a database management system to assure a database version using update logs from accumulated transactions
US7979408B2 (en) Allocation locks and their use
US6240413B1 (en) Fine-grained consistency mechanism for optimistic concurrency control using lock groups
US5953719A (en) Heterogeneous database system with dynamic commit procedure control
US5715447A (en) Method of and an apparatus for shortening a lock period of a shared buffer
US20040010499A1 (en) Database system with improved methods for asynchronous logging of transactions
US9021485B2 (en) Automatically restarting a first child process based on presence of SQL code in a list
JPH06318165A (ja) 故障後の再起動中でのトランザクション適応システムにおいてデータを利用可能にする方法
JP2004503863A (ja) スレッドを明示的に中断することなく整合状態とする方法及び装置
US6202136B1 (en) Method of creating an internally consistent copy of an actively updated data set without specialized caching hardware
US6502122B1 (en) Method and apparatus for executing transaction programs in parallel
Ulusoy et al. A real-time concurrency control protocol for main-memory database systems
US6353845B1 (en) Computer system, program product and method for tracking asynchronous I/O with timeout support
JPH01297741A (ja) データベースシステムの動的チェックポイント制御方式
CN106874074B (zh) 一种基于软件事务内存的并发缺陷规避系统及方法
EP0551528B1 (en) Method and apparatus for reducing lock period of shared buffer
JP2001101053A (ja) トランザクション管理方法及びトランザクション管理装置
Lee et al. Checkpointing schemes for fast restart in main memory database systems
Gruenwald et al. A performance study of concurrency control in a real-time main memory database system
JP2834036B2 (ja) ロック制御器
JP2982976B2 (ja) 別の環境で走行するプログラムから関数を呼び出す方法およびシステム
JPH0465733A (ja) バックアップファイル作成装置