JPH01194040A - 分散データベースシステムの障害回復方式 - Google Patents

分散データベースシステムの障害回復方式

Info

Publication number
JPH01194040A
JPH01194040A JP63017067A JP1706788A JPH01194040A JP H01194040 A JPH01194040 A JP H01194040A JP 63017067 A JP63017067 A JP 63017067A JP 1706788 A JP1706788 A JP 1706788A JP H01194040 A JPH01194040 A JP H01194040A
Authority
JP
Japan
Prior art keywords
node
transaction
client
server
phase
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
JP63017067A
Other languages
English (en)
Inventor
Kazuyoshi Negishi
和義 根岸
Hiromichi Ishikawa
石川 博道
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 JP63017067A priority Critical patent/JPH01194040A/ja
Publication of JPH01194040A publication Critical patent/JPH01194040A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、分散データベースシステムにおいて、通信路
あるいはノード障害が発生した場合にその回復を最小の
オーバーヘッドで行う障害回復方式%式% 〔従来の技術〕 従来の27エーズコミツトをトランザクションの終了処
理に使用する分散データベースシステムでは、例えば、
特開昭58−163062号公報に示すように、ノード
障害からの回復時にジャーナルから得た各トランザクシ
ョンの回復情報に基づきトランザクション毎に相手ノー
ドへの処理の問い合わせまたは指示を行っていた。また
、クライアントノードが障害から回復した場合、クライ
アントノードかサーバノードへの指示をサーバノードの
トランザクションの状態とは関係なく送信していた。
〔発明が解決しようとする課題〕
従来、障害回復後のノード間のトランザクションのコミ
ットあるいはロールパックに関する指示をトランザクシ
ョン毎に行っているため、メツセージ数が多く、回復時
の送受信オーバーヘッドを増大させていた。また、クラ
イアントノードから相手ノードのトランザクションの状
態に関係なくサーバノードへメツセージを送信していた
ため、サーバノードでローカルにコミットあるいはロー
ルバックを決定可能であり、既に処理を終了しているト
ランザクションに対しても改めて指示を転送している0
本発明の目的は、このメツセージ送受信オーバーヘッド
の削減を行なえる障害回復方式を提供することにある。
〔課題を解決するための手段〕
上記目的を達成するため、本発明は、障害回復時のトラ
ンザクションのコミットあるいはロールパック指示を、
トランザクション毎ではなくノード毎に纏めて行うこと
、通信回復時は、まずサーバからクライアントノードへ
問い合わせ、指示の必要なトランザクションに関する情
報のみをクライアントノードが送ることに特徴がある。
〔作用〕
本発明は、各トランザクションの終了状態をトランザク
ション状態テーブルにより各ノードが保持すること、障
害回復時はまずこのトランザクション状態テーブルを回
復すること、通信再開後、本テーブルの内容に基づいて
、サーバノードからクライアントノードに、トランザク
ションに関するコミット或いはロールパックの問い合わ
せを行うことによって、システムの障害回復時に集中し
て発生するノード間通信量を減少させ、回復処理の高速
化を実現できる。
〔実施例〕
以下、本発明の一実施例を図面により説明する。
第2図は本発明の実施例における分散データベースシス
テムの構成を示す9通信ネットワーク4にクライアント
ノードのプロセッサ3aおよびサーバノードのプロセッ
サ3bが結合している。各ノードはデータベース管理シ
ステム(以下DBMSと称する。)2aおよび2b、デ
ータベース5aおよび5b、履歴情報6aおよび6b、
そしてトランザクション状態テーブル1aおよび1bを
持つ。クライアントのプロセッサ3aで発生したトラン
ザクションがサーバノードのデータベース5bをアクセ
スする時、通信ネットワーク4を通じてサーバノードの
DBMS2bへその要求が送られる。サーバノードDB
MS2 bはアクセス要求を代行し、結果をクライアン
トノードへ通信ネットワーク4を通じて返送する。トラ
ンザクション終了処理は、クライアントノードのプロセ
ッサ3a指示により2フ工−ズコミツト方式で行う、ク
ライアントノードのDBMS2aおよびサーバノードの
DBMS2 bは2フェーズコミットの期間中トランザ
クションのID、現在のフェーズ、コミット、ロールパ
ックの区別(フェーズ2のみ)をトランザクション状態
管埋テーブル(以下TSTと称する。)1aおよび1b
に保持する。第1図にTSTlの構造を示す、TSTI
はトランザクションを識別するトランザクション識別子
(以下TRIDと称する。)11、トランザクションの
終了処理における状態を表す状態12、フェーズ2にお
けるクライアントのコミット/ロールパック指定13お
よび相手ノード名称14より成る。
第3図にクライアントの正常処理時の処理を示す。まず
、TSTエントリを相手ノード数分確保しくブロック3
1)、TRIDを設定する。また、状態としてフェーズ
1を設定する(ブロック32)。関連全サーバ(本トラ
ンザクションでリモートDBアクセスを行った全サーバ
)にコミット準備を送信し応答を持つ(ブロック33)
、連絡不可となっていない全サーバからの応答受信後、
状態を全てセキュアにかえる(ブロック34゜35)。
関連全サーバから正常応答のあった場合、コミットを行
うことを決定して、コミットジャーナルを取得する(ブ
ロック36.37)。状態をフェーズ2として(ブロッ
ク38)、関連全す−ハニコミットを送信する(ブロッ
ク39)。連絡不可となっていない全サーバから応答を
持った後(ブロック310)、応答のあったサーバに対
応するTSTを解放する(ブロック311)、ブロック
36に戻り、関連サーバのうちいくつかが連絡不可、ま
たはエラ一応答を返した時、ロールパックを決定する。
ロールパックジャーナルを取得しくブロック312)、
TST状態としてロールパックを設定しくブロック31
3)、連絡可能な全関連サーバへロールパックを送信す
る(ブロック314)。連絡可能なサーバからの応答を
待って、これらサーバのノードに対応するTSTを解放
する(ブロック310,311)。
第4図にサーバの終了処理の流れをしめす、コミット準
備を受信すると(ブロック41)、TSTを確保し、T
RIDを設定し、状態をフェーズ1とする(ブロック4
2)。コミット準備動作をおこない(ブロック43)、
フェーズ1ジヤーナルを出力しくブロック44)、成功
/失敗に対応して正常/エラ一応答を送信しくブロック
46.413)、TSTの状態をそれぞれセキニア/ロ
ールパック待ちとする(ブロック47゜414)。次の
クライアントからの指示により状態をフェーズ2/ロー
ルパツクとし、コミット/ロールパック動作を行う(ブ
ロック48〜412゜415〜417)。その後クライ
アントに応答を返して(ブロック418)、TSTを解
放する(ブロック419)。
連絡中断発生時、クライアントはフェーズに関係なく当
該ノードに対応するTSTを保留したまま残す。サーバ
は、第5図に示す処理を連絡中断発生時のTSTの状態
に応じて行う(ブロック51)。フェーズ1なら、処理
中のコミット準備を完了後ロールパックを行った後TS
Tを解放する(ブロック52)。セキュアなら連絡再開
を待つ(ブロック53)、フェーズ2/ロールパツクな
らそれぞれコミット/ロールパック動作完了とともにT
STを解放する(ブロック54.ss)。
連絡再開時の処理を第6図に示す、まず、サーバがセキ
ュア状態のTRIDのリストを作ってクライアントへ送
る(ブロック61.62)、クライアントは自TSTと
比較してTRIDリストにコミット/ロールパック/未
定/エントリなしを記入してサーバへ返送する(ブロッ
ク66〜68)。サーバはこのリストにより、コミット
ならコミット動作、ロールパックまたはエントリなしな
らロールパック動作を行う(ブロック63)。
コミット/ロールパックを行ったTRのリストを作成し
クライアントへ送信するとともに(ブロック64)、対
応するTSTエントリを解放する(ブロック65)、ク
ライアントは当初のTRIDリストになかった保留状態
のTSTエントリ、および動作完了報告のTRIDリス
トにあったTRに対応するTSTエントリを解放する(
ブロック69,610)。
ノードダウン発生時は、クライアントプロセッサ3aは
コミット/ロールパックのジャーナルとして出力されて
いる履歴情報よりTSTをフェーズ2/ロールパツク状
態に回復する。その後、連絡再開処理を図6の手順で行
う、コミット/ロールパックジャーナルの取得以前の状
態にあったTRのTSTエントリは回復されないが、ク
ライアント、サーバの双方がロールパックを行うため矛
盾は生じない、サーバプロセッサ3bでは、コミット/
ロールパック時に出力されるジャーナルおよびフェーズ
1ジヤーナルによりTSTを回復する。すなわち、フェ
ーズ1ジヤーナルがありコミット/ロールパック動作時
のジャーナルのないTRに対して、セキュア状態のTS
Tを回復する。
以後の処理は連絡再開時と同様である。
〔発明の効果〕
本発明によれば、通信障害およびノードダウン後のトラ
ンザクション状態回復に要するメツセージ量がクライア
ント側で終了処理中の(TR数X2)個から、3個に減
少する。これによりシステムの障害回復時に集中して発
生するノード間通信量を減少させ、回復処理の高速化を
実現できる。
【図面の簡単な説明】
第1図はTSTの例の構成図、第2図は分散データベー
スシステムの一例の構成図、第3図はクライアント終了
処理の一例の流れ図、第4図はサーバ終了処理の一例の
流れ図、第5図はサーバの連絡中断時の処理の一例の流
れ図、第6図は連絡再開時の処理の一例の流れ図である
。 1・・・TST、2・・・DBMS、3・・・プロセッ
サ、4・・・通信ネットワーク、5・・・データベース
、6・・・履歴情報。 ・・1 4、+ド 代理人 弁理士 小川勝男・、。 茅z’fiJ !5図

Claims (1)

    【特許請求の範囲】
  1. 1、プロセッサとデータベースよりなる複数のノードと
    、このノードを結合する通信ネットワークよりなり、複
    数のノードのデータベースをアクセスするトランザクシ
    ョンを各ノードでジャーナルを取得しつつ処理し、トラ
    ンザクションを処理した各ノードの終了処理時に、一つ
    のクライアントノードと複数のサーバノードに分かれて
    2フェーズコミットによって各ノード間の同期をとり、
    各ノードにトランザクション状態テーブルを持つ分散デ
    ータベースシステムにおいて、トランザクションの終了
    処理中は、クライアントおよびサーバノードのトランザ
    クション状態テーブルに終了処理のフェーズ1、フェー
    ズ2の開始終了を記録し、クライアントノードとサーバ
    ノード間の通信中断の発生時は該通信路を使用していた
    クライアントノードとサーバノードは上記記録を残し、
    クライアント側トランザクションは降し、通信再開時は
    、サーバノードからクライアントノードにこのトランザ
    クション状態の記録を送り、それらトランザクションに
    関する処理をサーバへ送り返して終了処理を完了させ、
    ノードダウン発生時はトランザクション状態テーブルを
    まずジャーナルより回復し、しかるのちに前述の通信再
    開処理を行うことを特徴とする分散データベースシステ
    ムの障害回復方式。
JP63017067A 1988-01-29 1988-01-29 分散データベースシステムの障害回復方式 Pending JPH01194040A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63017067A JPH01194040A (ja) 1988-01-29 1988-01-29 分散データベースシステムの障害回復方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63017067A JPH01194040A (ja) 1988-01-29 1988-01-29 分散データベースシステムの障害回復方式

Publications (1)

Publication Number Publication Date
JPH01194040A true JPH01194040A (ja) 1989-08-04

Family

ID=11933641

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63017067A Pending JPH01194040A (ja) 1988-01-29 1988-01-29 分散データベースシステムの障害回復方式

Country Status (1)

Country Link
JP (1) JPH01194040A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04229358A (ja) * 1990-05-16 1992-08-18 Internatl Business Mach Corp <Ibm> 同期点回復手段を有するコンピュータ装置
JPH04229359A (ja) * 1990-05-16 1992-08-18 Internatl Business Mach Corp <Ibm> コンピュータ・ネットワーク
JPH0793272A (ja) * 1990-05-16 1995-04-07 Internatl Business Mach Corp <Ibm> 資源の同期点管理を実行する装置および方法
JPH0793271A (ja) * 1990-05-16 1995-04-07 Internatl Business Mach Corp <Ibm> 作業ユニットに合わせてコミット範囲を調整するコンピュータ・システム
JPH0836515A (ja) * 1994-07-25 1996-02-06 Nec Corp ファイル復旧方式
WO1996027157A1 (fr) * 1995-02-28 1996-09-06 Ntt Data Communications Systems Corporation Systeme associatif decentralise et traitements de journaux et de reprise dans celui-ci

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04229358A (ja) * 1990-05-16 1992-08-18 Internatl Business Mach Corp <Ibm> 同期点回復手段を有するコンピュータ装置
JPH04229359A (ja) * 1990-05-16 1992-08-18 Internatl Business Mach Corp <Ibm> コンピュータ・ネットワーク
JPH0793272A (ja) * 1990-05-16 1995-04-07 Internatl Business Mach Corp <Ibm> 資源の同期点管理を実行する装置および方法
JPH0793271A (ja) * 1990-05-16 1995-04-07 Internatl Business Mach Corp <Ibm> 作業ユニットに合わせてコミット範囲を調整するコンピュータ・システム
JPH0836515A (ja) * 1994-07-25 1996-02-06 Nec Corp ファイル復旧方式
WO1996027157A1 (fr) * 1995-02-28 1996-09-06 Ntt Data Communications Systems Corporation Systeme associatif decentralise et traitements de journaux et de reprise dans celui-ci
US6052695A (en) * 1995-02-28 2000-04-18 Ntt Data Communications Systems Corporation Accurate completion of transaction in cooperative type distributed system and recovery procedure for same

Similar Documents

Publication Publication Date Title
US6934247B2 (en) Recovery following process or system failure
EP0950955B1 (en) Method and apparatus for correct and complete transactions in a fault tolerant distributed database system
US7392421B1 (en) Framework for managing clustering and replication
JP2691080B2 (ja) 同期点回復手段を有するコンピュータ装置
US7512682B2 (en) Database cluster systems and methods for maintaining client connections
JP2691081B2 (ja) コンピュータ・ネットワーク
JP3293839B2 (ja) 作業ユニットに合わせてコミット範囲を調整するコンピュータ・システム
CA2205725C (en) Preventing conflicts in distributed systems
US7260589B2 (en) High performance support for XA protocols in a clustered shared database
Koo et al. Checkpointing and rollback-recovery for distributed systems
JP3790589B2 (ja) 分散データベーストランザクションのコミットメント方法
JP3268534B2 (ja) 保護された資源の同期点管理を行うコンピュータ・システム
US6941327B2 (en) Apparatus and method for database synchronization in a duplex system
US7912858B2 (en) Data synchronization method
JPH04229333A (ja) コミット手順の非同期的再同期化実行装置および方法
JPH087690B2 (ja) コミット手順におけるエラー・コードおよびエラー記述情報の処理装置および方法
JP2002091938A (ja) フェールオーバを処理するシステムおよび方法
US6141679A (en) High performance distributed transaction processing methods and apparatus
EP0834122B1 (en) Synchronisation procedure in a routing node
JPH01194040A (ja) 分散データベースシステムの障害回復方式
US20060123069A1 (en) Method and system for deferred synchronisation of data
CN115866018B (zh) 业务处理方法、装置、电子设备及计算机可读存储介质
JP2938860B1 (ja) 分散型データ管理システム
Mostafa et al. A primary shift protocol for improving availability in replication systems
JPH07311748A (ja) 分散データベースシステムの障害回復方式