2相ロッキングプロトコルとは?
2相ロッキングプロトコルとは、ロックを獲得していく成長相と、解放していく縮退相を分け、いったん解放を始めたら新たなロックを獲得しないという規約。これを守れば直列化可能性が保証される。
データベーススペシャリスト試験の過去問では6回出題されています(2017年度〜2025年度)。
にそうロッキングプロトコル
2相ロッキングプロトコルの意味
ロックを獲得していく成長相と、解放していく縮退相を分け、いったん解放を始めたら新たなロックを獲得しないという規約。これを守れば直列化可能性が保証される。
2相ロッキングプロトコルの具体例
必要なロックをすべて取ってから処理し、その後まとめて解放する。
2相ロッキングプロトコルは試験でどう引っ掛けられる?
2相ロックは直列化可能性を保証するが、デッドロックを防ぐわけではない。またコミット時まで解放を遅らせるものは厳格2相ロックと呼び、カスケードアボートを防げる。
2相ロッキングプロトコルと関連する用語
2相ロッキングプロトコルが出た過去問
2相ロック方式に従うトランザクションに関する記述のうち、適切なものはどれか。
正解:トランザクションの競合直列可能性が保証される。
要点:2相ロックはロック獲得と解放の相を分け直列化可能性を保証
2相ロックは、ロックを獲得していく成長相と解放していく縮退相を分け、いったんロックを解放したら以後は新たなロックを獲得しない規約である。これにより並行実行の結果が何らかの直列実行と同じになること(競合直列可能性)が保証される。
出典:平成29年度 春期 データベーススペシャリスト試験 am2 問15(IPA)厳格な2相ロッキングプロトコルと表ロックを適用して、同時実行している他のトランザクションの処理結果に影響を与えないようにする。実現されるトランザクションの隔離性…
正解:SERIALIZABLE
要点:厳格2相ロック+表ロックはSERIALIZABLEを実現する
厳格な2相ロッキングでは獲得したロックをコミットまで解放せず、さらに表単位でロックをかければ、他のトランザクションはその表に一切手を出せなくなる。行の追加による現象まで含めてあらゆる干渉が排除されるため、最も高い隔離性水準であるSERIALIZABLEが実現される。
出典:平成30年度 春期 データベーススペシャリスト試験 am2 問14(IPA)2相ロック方式を用いたトランザクションの同時実行制御に関する記述のうち、適切なものはどれか。
正解:トランザクションは、必要な全てのロックを獲得した後にだけ、ロックを解除できる。
要点:2相ロックは全ロック獲得後にのみ解放を始める規則
2相ロック方式は、ロックを獲得していく成長相と解放していく縮退相に分け、いったん解放を始めたら新たなロックを獲得しない、という規則である。言い換えれば必要なロックをすべて獲得し終えてからでなければ解放できない。この規則により直列化可能なスケジュールが保証される。よってエが正しい。
出典:令和3年度 秋期 データベーススペシャリスト試験 am2 問13(IPA)2相ロック方式を用いたトランザクションの同時実行制御に関する記述のうち、適切なものはどれか。
正解:トランザクションは、必要な全てのロックを獲得した後にだけ、ロックを解除できる。
要点:2相ロックは全ロック獲得後にのみ解放を始める規則
2相ロック方式は、ロックを獲得していく成長相と解放していく縮退相に分け、いったん解放を始めたら新たなロックを獲得しない、という規則である。言い換えれば必要なロックをすべて獲得し終えてからでなければ解放できない。この規則により直列化可能なスケジュールが保証される。
出典:令和5年度 秋期 データベーススペシャリスト試験 am2 問12(IPA)トランザクションPが資源Xの値を4から5に更新した後にトランザクションQが開始し、Pがコミットする前にQが資源Xを参照しようとした。Qの挙動のa, bに入れる字…
正解:a: Pがコミット完了するまで待機した後、Xの値5を得る / b: Pのコミット完了を待機することなく、Xの値4を得る
要点:2相ロックは待って新値、MVCCは待たず旧版を読む
単版(シングルバージョン)の2相ロッキングでは、更新側が排他ロックを保持したままなので、読取り側はコミットまで待たされ、解放後は更新後の値を読む。一方MVCCは更新時に旧版を残すため、読取り側はロックを待たずにコミット済みの旧版、すなわち更新前の値を読める。READ COMMITTEDでは未コミットの新値を読むことはないので、待たずに読む場合の値は更新前の4になる。
出典:令和6年度 秋期 データベーススペシャリスト試験 am2 問14(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。