令和6年度 秋期 データベーススペシャリスト試験 午前II 問12

二つのトランザクションが,同じデータに対して,更新,参照を行うときに発生し得るダーティリードの事象を記述したものはどれか。

解答・解説

正解: エ. まだコミットしていないトランザクションAの更新後データをトランザクションBが参照した。その後,更新後データはロールバックされた。

ダーティリード(Dirty Read)とは、他のトランザクションがまだコミットしていない(確定していない)変更途中のデータを読み取ってしまう現象です。

トランザクションAがデータを更新し、まだコミットしていない状態のデータをトランザクションBが読み取った後、トランザクションAがロールバック(取り消し)された場合、トランザクションBは実際には存在しない無効なデータを読み取って処理を進めてしまうことになります。これにより、データの不整合が発生する可能性があります。

したがって、未コミットのデータを参照し、その後ロールバックされる事象を説明しているエが正解となります。

各選択肢の解説

Spineチーム