ITパスポート 2009年 (平成21年 秋期) 問88「複数の利用者が同時にデータベースを利用する場合に,1人の利用者がデータ更新中に,…」の正解と解説です。ITパスポート試験の「テクノロジ系」分野の過去問で、これまでの受験者の正答率は約59%です。
正解
ウ. 更新中の利用者の処理が終了してから参照させる。
正答率 58.7%(533人中 313人が正解)
問題の解説
データベースの排他制御では,更新中のデータに対してロックを掛けて他者の参照や更新を待たせる.更新者がコミット (確定) またはロールバック (取消) を完了するまで他者の参照を待たせることでデータの整合性を保つ.ACID特性のうち隔離性 (Isolation) を実現する仕組み.更新途中のデータを参照させると,ロールバック時にダーティリードが生じるため不適切となる手法.覚え方や類似用語の区別を整理しておくと,本試験で
選択肢ごとの解説
- 更新処理を中断するのは整合性を損なう恐れがあり不適切となる.更新者の意図に反する処理で,データ不整合の原因となり,排他制御の目的に反するアプローチであるため正解ではない.覚え方や類似用語の区別を整理しておくと,
- 更新中 (コミット前) の最新データを参照させるとダーティリード (ロールバックされる可能性のあるデータを読む) となり,整合性を損なう.トランザクション分離レベルで防ぐべき現象.覚え方や類似用語の区別を整理し
- 正解.更新処理が終了 (コミットまたはロールバック完了) してから参照させることでデータの整合性が保障される.排他制御の標準的な動作で,ロックによる待機制御が基本.覚え方や類似用語の区別を整理しておくと,本試験
- 更新を勝手に破棄するのは不適切で,更新者の意図を無視することになる.参照者のために他者の作業を取り消すのは設計として誤りで,データベース管理の基本原則に反する.覚え方や類似用語の区別を整理しておくと,本試験での
ITパスポート 2009年 (平成21年 秋期) の過去問一覧に戻る・問88