応用情報技術者試験 令和7年度 秋期 午前 問29
RDBMSにおいて、同じデータ項目の異なる版を用意することによって、トランザクションの同時実行性を高める仕組みはどれか。
選択肢を押すと答え合わせができます。
正解と解説を見る
【正解】イ
MVCCはMulti-Version Concurrency Controlの略で、日本語では多版型同時実行制御といいます。同じデータ項目について更新前と更新後などの複数の版を保持し、各トランザクションが開始時点などに対応した版を参照します。読取り処理が更新処理の完了を待たずに済みやすく、読取りと書込みの競合を減らして同時実行性を高められるので、イが適切です。
アの2相ロッキングプロトコルは誤りです。これは、ロックを獲得する成長相と、ロックを解放する縮退相に分け、直列化可能性を確保する方式です。異なる版を用意する仕組みではなく、ロックによって競合を制御します。
ウのWALプロトコルは誤りです。WALはWrite Ahead Loggingの略で、データ本体を書き換える前に更新内容をログへ記録する方式です。障害発生時のロールバックやロールフォワードに用いる回復制御の仕組みであり、複数版による同時実行制御ではありません。
エの共有ロックは誤りです。これは、参照時に設定するロックで、複数トランザクションが同じデータを同時に参照できますが、排他ロックを必要とする更新とは競合します。データの版を分ける方式ではありません。
【ポイント】 MVCCでは、参照処理は一貫した時点のスナップショットを読むため、更新との待合せを減らせます。 一方、不要になった古い版の管理や、同じ行を同時更新した場合の競合処理は必要です。
出典:令和7年度 秋期 応用情報技術者試験 午前 問29
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。
この回の80問を、アプリで通しで解く
- 本番と同じ問題数・制限時間で通し演習(模試モード)
- 間違えた問題は自動で「復習すべき問題」に回る
- 解説で分からない点はAIに質問できる