2相コミットとは?にそうこみっと
2相コミットとは、複数のデータベースにまたがる更新を、全体を成立させるか全体を取り消すかのどちらかへ揃える制御方式。調停役が全参加者へ確定可能かを問い合わせる第1相と、全員が可と答えたときだけ確定を指示する第2相からなる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
更新先が複数に分かれると、片方だけ確定して片方が失敗するという中途半端な状態が生まれる。これを後から人手で突き合わせて直すのは現実的でないため、確定の意思決定を全員に確認してから一斉に行う手順が用意された。ただし全員の応答を待つ以上、1台の不調が全体を止めるという副作用は避けられない。
具体例
本社と工場がそれぞれ在庫を持つ場合、出荷の計上が片方だけ確定すると差異が残る。第1相で両方が確定可能と応答して初めて確定する。運用手順書には、調停役の障害で参加者が確定待ちのまま固まったときの解除手順を書き、定期的に訓練しておく。
試験での引っ掛け
整合性は保証するが可用性は下げる。1台でも応答しないと全体が待たされるため、可用性を優先する設計ではあえて採用せず、後から差異を突き合わせて是正する方式を選ぶこともある。その場合は差異を検出する仕組みが代替の統制になる。
関連用語
出た過去問
出典:令和4年度 春期 ITサービスマネージャ試験 午前Ⅱ 問23(IPA)
図は、分散システムにおける2相コミットプロトコルの正常処理の流れを表している。③の動作はどれか。
正解:コミット実行指示
要点:2相コミットは可否問合せ→回答→コミット指示→完了報告の順
2相コミットでは、調整役が全参加者へコミット可否を問い合わせ(①)、各参加者がコミット可否を回答して待機状態に入る(②)。全参加者が可であれば調整役がコミット実行を指示し(③)、各参加者がコミット完了を報告して(④)トランザクションが終了する。③は調整役から参加者への往路にあたるので、コミット実行指示である。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。