トランザクションの同時実行性を高めるMVCC(多版型同時実行制御)
MVCC(Multi-Version Concurrency Control: 多版型同時実行制御)は、同一のデータ項目に対して更新が行われた際、既存のデータを上書きするのではなく、トランザクション開始時点やタイムスタンプに応じた「過去のバージョンのデータ(スナップショット)」を保持・管理するアーキテクチャです。 これにより、書き込み(更新)トランザクションが進行中であっても、読み取り(参照)トランザクションは過去の確定版データをノンブロッキングで読み出すことができ、「読み取りが書き込みをブロックせず、書き込みが読み取りをブロックしない」高い同時実行性を実現します。したがってイが正解です。 各選択肢の解説は以下のとおりです。 2相ロッキングプロトコル(2PL)は、直列化可能性(シリアライザビリティ)を保証するためにロックの獲得フェーズと解放フェーズを分ける排他制御手法です。 WAL(Write-Ahead Logging: ログ先行書き込み)プロトコルは、データベース本体を更新する前に必ず変更ログをディスクに永続化させることで、原子性と耐久性を担保する手法です。 共有ロック(Sロック)は、データの読み取り時に他のトランザクションからの更新(排他ロック)を防ぐために獲得するロックです。
同時実行制御(排他制御)
トランザクション
RDBMS において,同じデータ項目の異なる版を用意することによって,トランザクションの同時実行性を高める仕組みはどれか。
出典
令和7年度秋期 応用情報技術者試験 午前 問29
ア
2相ロッキングプロトコル
イ
MVCC
ウ
WAL プロトコル
エ
共有ロック
前の問題
スキップ
【正解・解説】トランザクションの同時実行性を高めるMVCC(多版型同時実行制御)|令和7秋 応用情報 午前 問29 | IT資格ラボ