令和7年度 秋期 応用情報技術者試験 午前 問29

RDBMSにおいて,同じデータ項目の異なる版を用意することによって,トランザクションの同時実行性を高める仕組みはどれか。

解答・解説

正解: イ. MVCC

正解は イ です。

問題文にある「同じデータ項目の異なる版を用意することによって,トランザクションの同時実行性を高める仕組み」は MVCC(MultiVersion Concurrency Control:多版同時実行制御)の説明です。
MVCCでは、データが更新される際に上書きするのではなく、新しい版(バージョン)を作成します。これにより、読み取り処理と書き込み処理が互いにブロックすることなく並行して実行できるため、トランザクションの 同時実行性 が向上します。

各選択肢の解説

  • ア:2相ロッキングプロトコル
    トランザクションにおけるロックの獲得と解放を、成長相(ロックの獲得のみ)と縮退相(ロックの解放のみ)の2つのフェーズに分けて行う方式です。同時実行性を高めるための版を管理する仕組みではありません。
  • イ:MVCC
    正解です。同じデータ項目の異なる版を用意し、トランザクションの同時実行性を高めます。
  • ウ:WALプロトコル
    Write-Ahead Logging(ログ先行書き込み)プロトコルのことで、データベースのデータを更新する前に、変更内容のログをディスクに書き込む仕組みです。主に障害発生時の リカバリ のために使用されます。
  • エ:共有ロック
    データを読み込む際に他のトランザクションによってデータが変更されるのを防ぐためにかけるロックです。同時実行性を高める版の管理とは関係ありません。

Spineチーム