分散トランザクションと2相コミットとは?
分散トランザクションと2相コミットとは、複数のデータベースサーバにまたがる処理を1つのトランザクションとして扱う仕組みが分散トランザクション。2相コミットは、すべてのサーバが更新を確定(コミット)できる準備が整っているかを確認する「準備フェーズ」と、実際に確定または取り消しを指示する「コミットフェーズ」の2段階に分けて、複数サーバ間の整合性を保つプロトコル。
ぶんさんとらんざくしょんとにそうこみっと
分散トランザクションと2相コミットの意味
複数のデータベースサーバにまたがる処理を1つのトランザクションとして扱う仕組みが分散トランザクション。2相コミットは、すべてのサーバが更新を確定(コミット)できる準備が整っているかを確認する「準備フェーズ」と、実際に確定または取り消しを指示する「コミットフェーズ」の2段階に分けて、複数サーバ間の整合性を保つプロトコル。
分散トランザクションと2相コミットの具体例
銀行間送金のように、複数の異なるサーバ上の口座残高を同時に更新する処理では、一部のサーバだけ更新が成功して他が失敗する事態を避けるために2相コミットが用いられる。
分散トランザクションと2相コミットは試験でどう引っ掛けられる?
調整者が可否を問い合わせる準備フェーズが先、確定を指示するコミットフェーズが後で、1つでも不可なら全体をロールバックする。準備完了後に調整者が故障すると参加者が待ち続けるブロッキングが弱点。2相ロッキングとは別概念。
分散トランザクションと2相コミットと関連する用語
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。