IPA過去問ドリル

平成27年度 春期 データベーススペシャリスト試験 午前Ⅱ 問16

テクノロジ/データベース

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

出典:平成27年度 春期 データベーススペシャリスト試験 午前Ⅱ 問16

正解:エ

解説

ダーティリードとは,あるトランザクションがまだコミットしていない(確定していない)更新後のデータを,別のトランザクションが読み取ってしまう事象である。読み取られたデータのもとになった更新が,その後ロールバックされて取り消されると,参照した側のトランザクションは実際には存在しなかったデータを読んだことになってしまう。

選択肢ごとの解説

  • 誤り。これは,一度の検索条件による参照の間に,他のトランザクションが挿入した行が新たに出現する事象であり,ファントムリード(幻読)と呼ばれる事象の説明である。
  • 誤り。これは,同じ行を2回参照する間に,他のトランザクションのコミット済みの更新によって値が変わってしまう事象であり,反復不能読取り(非再現読取り)と呼ばれる事象の説明である。
  • 誤り。これは,二つのトランザクションが互いに相手の保持するロックの解放を待ち合ってしまう事象であり,デッドロックの説明である。
  • 正しい。まだコミットされていない(確定していない)更新後のデータを他のトランザクションが参照し,その後その更新がロールバックされて取り消されるという事象は,ダーティリードそのものの説明である。
データベーススペシャリストの過去問を演習モードで解く