応用情報技術者 2010年 春期 午前2 問34
問題文
DBMSのロールフォワードを説明したものはどれか。
選択肢
ア:更新前ログ情報によって、直近の整合性のとれた状態に回復する。
イ:障害のもととなったプログラムを修正し、再実行によって回復する。
ウ:チェックポイント情報と更新後ログ情報を使って回復する。(正解)
エ:データベースのレコードの内容を、SQLを使って直接修正する。
DBMSのロールフォワードとは【午前2 解説】
要点まとめ
- 結論:ロールフォワードはチェックポイント以降の更新後ログを使い、障害発生後の最新状態に回復します。
- 根拠:更新後ログには障害発生前の変更内容が記録されており、これを適用することで最新の整合性を保てます。
- 差がつくポイント:更新前ログと更新後ログの違い、ロールフォワードとロールバックの役割を正確に理解することが重要です。
正解の理由
ロールフォワードは障害発生時に、チェックポイント時点の状態から更新後ログを順に適用してデータベースを最新の整合性のとれた状態に戻す手法です。選択肢ウは「チェックポイント情報と更新後ログ情報を使って回復する」とあり、これがロールフォワードの正しい説明です。
よくある誤解
ロールフォワードは更新前ログを使うのではなく、更新後ログを使う点を混同しやすいです。ロールバックと混同して、更新前ログを使うと誤解することもあります。
解法ステップ
- ロールフォワードの意味を確認する(障害後の最新状態への回復)。
- ログの種類(更新前ログ・更新後ログ)を理解する。
- チェックポイントの役割を押さえる(回復の起点となる)。
- 選択肢の説明とロールフォワードの定義を照合する。
- 更新後ログとチェックポイントを使う選択肢を選ぶ。
選択肢別の誤答解説
- ア: 更新前ログはロールバックに使うため、ロールフォワードの説明としては誤りです。
- イ: プログラム修正や再実行は回復方法の一つですが、ロールフォワードの説明ではありません。
- ウ: チェックポイントと更新後ログを使うため正解です。
- エ: SQLで直接修正するのは手動操作であり、ロールフォワードの自動回復手法とは異なります。
補足コラム
ロールフォワードは障害発生後にデータベースを最新の状態に戻すための重要な回復手法です。これに対し、ロールバックはトランザクションの途中でエラーが発生した際に、更新前ログを使って変更を取り消す処理です。チェックポイントは回復処理の起点となり、ログの適用範囲を限定して回復時間を短縮します。
FAQ
Q: ロールフォワードとロールバックの違いは何ですか?
A: ロールフォワードは障害後に更新後ログを使って最新状態に回復し、ロールバックはトランザクションの途中で更新前ログを使い変更を取り消します。
A: ロールフォワードは障害後に更新後ログを使って最新状態に回復し、ロールバックはトランザクションの途中で更新前ログを使い変更を取り消します。
Q: チェックポイントはなぜ必要ですか?
A: チェックポイントは回復処理の起点となり、ログの適用範囲を限定して回復時間を短縮するために設けられています。
A: チェックポイントは回復処理の起点となり、ログの適用範囲を限定して回復時間を短縮するために設けられています。
関連キーワード: ロールフォワード、更新後ログ、チェックポイント、ロールバック、データベース回復

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

