応用情報技術者試験 令和7年度 秋期 午前 問29
RDBMSにおいて、同じデータ項目の異なる版を用意することによって、トランザクションの同時実行性を高める仕組みはどれか。
選択肢を押すと答え合わせができます。
正解と解説を見る
【正解】イ
MVCC(Multi-Version Concurrency Control:多版型同時実行制御)は、データの複数のバージョン(版)を保持することで、読み取りトランザクションと書き込みトランザクションが互いをブロックせずに同時実行できるようにする仕組みです。
イのMVCCが正解です。PostgreSQL、MySQL(InnoDB)、Oracleなど多くのRDBMSで採用されています。
アの2相ロッキングプロトコル(2PL:Two-Phase Locking Protocol)は、トランザクションのロック獲得と解放を2つのフェーズに分けることで直列可能性を保証する方式です。複数バージョンを用意する方式ではありません。
ウのWALプロトコル(Write-Ahead Logging)は、データベースの変更をディスクに書き込む前にログを先に書き込む方式で、障害回復のための仕組みです。同時実行制御とは異なります。
エの共有ロックは、複数のトランザクションが同時にデータを読み取ることを許可するロックの種類です。複数バージョンを用意する方式ではありません。
【ポイント】 MVCCでは、更新時に新しいバージョンを作成し、他のトランザクションは古いバージョンを参照し続けることで、読み取りがブロックされません。スナップショット分離レベルの実現にも使われます。
出典:令和7年度 秋期 応用情報技術者試験 午前 問29
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。
この回の80問を、アプリで通しで解く
- 本番と同じ問題数・制限時間で通し演習(模試モード)
- 間違えた問題は自動で「復習すべき問題」に回る
- 解説で分からない点はAIに質問できる