な行

2相コミットプロトコル

トランザクションを他のサイトに更新可能かどうかを確認する第1相と、更新を確定する第2相の2つのフェーズに分け、各サイトのトランザクションをコミットもロールバックも可能な中間状態(セキュア状態)にした後、全サイトがコミットできる場合だけトランザクションをコミットするという方法で分散データベース環境でのトランザクションの原子性・一貫性を保証する手法です。

具体的には、各サイトの更新処理が終わった後に、コミットの調整を行う1つのノードを「主サイト」、ネットワーク上の他のノードを「従サイト」として、次の手順でコミットが行われます。

[第1相(投票層)]

  1. 主サイトはネットワーク上の全ての従サイトにコミットの可否を問い合わせる。
  2. 全ての従サイトは主サイトにコミットの可否を応答する。

[第2相(決定相)]

  1. 全ての従サイトからコミットの合意を得られた場合は、全ての従サイトにコミットの実行要求を発行する。コミットの停止を応答した従サイトがあった場合、またはタイムアウトとなった場合は、全ての従サイトにロールバックの実行要求を発行する。
  2. 全ての従サイトは、コミット(またはロールバック)の完了とともに主サイトに処理完了のメッセージを送る。
  3. 主サイトが、全ての従サイトからの処理完了メッセージを受け取り、トランザクションの完了となる。

スポンサーリンク

スポンサーリンク

-な行

© 2024 ハセオのIT百科事典