令和7年度秋期 応用情報技術者試験 午前 問29
RDBMSにおいて,同じデータ項目の異なる版を用意することによって,トランザクションの同時実行性を高める仕組みはどれか。
- ア 2相ロッキングプロトコル
- イ MVCC
- ウ WALプロトコル
- エ 共有ロック
解答・解説を見る
正解:イ
AI解説
MVCC(Multi-Version Concurrency Control、多版同時実行制御)は、更新のたびにデータ項目の新しい版(バージョン)を作成し、読み取りトランザクションには更新前の版を見せることで、読み取りと書き込みが互いにロック待ちをせずに同時実行できるようにする仕組みである。 ア: 2相ロッキングプロトコルはロックの獲得・解放を2段階に分けて直列可能性を保証する制御方式であり、版を複数保持する仕組みではない。 イ: 正しい。MVCCはデータの異なる版を複数保持することで、読み書きの競合を減らし同時実行性を高める仕組みである。 ウ: WAL(Write-Ahead Logging)プロトコルは、データ更新前に変更内容をログへ先に書き込むことで障害時の復旧を保証する仕組みであり、版の管理とは目的が異なる。 エ: 共有ロックは複数トランザクションが同時に参照(読み取り)することを許可するロックの一種であり、複数版を保持する仕組みそのものではない。 💡 MVCCは『読み取りは常に何らかの一貫した版を参照でき、書き込みをブロックしない』という特徴を持ち、PostgreSQLなど多くのRDBMSで採用されている。
出典:令和7年度 秋期 応用情報技術者試験 午前 問29 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。