平成19年 秋期 基本情報技術者 午前 問50

データベースのロールバック処理を説明したものはどれか。

 ア  更新後ジャーナルを用いて、トランザクション開始後の障害直前の状態にまでデータを復旧させる。
 イ  更新後ジャーナルを用いて、トランザクション開始直前の状態にまでデータを復旧させる。
 ウ  更新前ジャーナルを用いて、トランザクション開始後の障害直前の状態にまでデータを復旧させる。
 エ  更新前ジャーナルを用いて、トランザクション開始直前の状態にまでデータを復旧させる。


答え エ


解説

 ア  更新後ジャーナルを用いて、障害直前の状態に復旧するのはロールフォワード処理です。
 イ  更新後ジャーナルで、トランザクション直前の状態には復旧できません。
 ウ  更新前ジャーナルで、障害直前の状態には復旧できません。
 エ  更新前ジャーナルで、トランザクション直前の状態に復旧するのはロールバック処理です。

[復旧処理の考え方]
 処理Aは、チェックポイント前にコミットしているので復旧処理は必要ない。

 処理B、処理Dは、チェックポイントから障害発生までの間にコミットしているので復旧処理としてロールフォワード処理を行う。

 処理Cは、チェックポイント前から処理していて、障害発生時完了していないので復旧処理としてロールバック処理を行う。

 処理Eは、処理開始がチェックポイント後で障害発生時に完了していないので復旧後に処理をやり直す。


キーワード
・ロールバック

キーワードの解説
  • ロールバック(roll back)
    データベースに障害が発生したときに、障害の直前に行ったチェックポイント(データを確定させる処理)まで、データを元に戻す処理のことです。
    元に戻すための情報として、データベースの操作をしたときの記録(ジャーナル)を使用します。
    ジャーナルには、操作前のデータベースの状態を記録する更新前ジャーナルと、操作後の状態を記録する更新後ジャーナルがあります。
    チェックポイントはトランザクション処理の完了後に行われることが一般的です。

もっと、「ロールバック」について調べてみよう。

戻る 一覧へ 次へ