DBMSの多版同時実行制御(MVCC)に関する記述として、適切なものはどれか。
MVCCは版を保持し参照側に更新前の版を返して待ちを避ける
選択肢
- ア同時実行される二つのトランザクションのうち、先発のトランザクションがデータを更新し、コミットする前に、後発のトランザクションが同じデータを参照すると、更新前の値を返す。
- イトランザクションがデータを更新する前に専有ロックを、参照する前に共有ロックを掛け、コミットかロールバック後に全てアンロックする。
- ウトランザクションがデータを更新する前に専有ロックを、参照する前に共有ロックを掛け、専有ロックはコミットかロールバック後までアンロックしないが、共有ロックは不要になったらアンロックする。
- エトランザクションがデータを更新する前にロックを掛けず、コミット直前に他のトランザクションがそのデータを更新したかどうか確認し、更新していないときだけコミットする。
正解と解説
正解:ア 同時実行される二つのトランザクションのうち、先発のトランザクションがデータを更新し、コミットする前に、後発のトランザクションが同じデータを参照すると、更新前の値を返す。
多版同時実行制御は、更新時に古い版を残して新しい版を作り、参照側にはそのトランザクションから見て整合する版を返す方式である。したがって未コミットの更新がある行を他のトランザクションが参照しても、更新前の版が返り、読み手が書き手を待たされない。
選択肢ごとの解説
同じ分野の他の問題
- 二つのトランザクションT1とT2を並列に実行した結果が、T1の完了後にT2を実行した結果、又はT2の完了後にT1を実行し…2025年度 秋期 午前II 問16
- トランザクションPが資源Xの値を4から5に更新した後にトランザクションQが開始し、Pがコミットする前にQが資源Xを参照し…2024年度 秋期 午前II 問14
- 二つのトランザクションT1とT2を並列に実行した結果が、T1の完了後にT2を実行した結果、又はT2の完了後にT1を実行し…2023年度 秋期 午前II 問17
- 2相ロック方式を用いたトランザクションの同時実行制御に関する記述のうち、適切なものはどれか。2023年度 秋期 午前II 問12
- 多版同時実行制御(MVCC)の特徴のうち、適切なものはどれか。2021年度 秋期 午前II 問16
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。