戦国IT - 情報処理技術者試験の過去問対策サイト
お知らせお問い合わせ料金プラン

データベーススペシャリスト 2015年 午前205


問題文

DBMSが取得するログに関する記述として、適切なものはどれか。

選択肢

トランザクションの取消しに備えて、 データベースの更新されたページに対する更新後情報を取得する。
媒体障害からの復旧に備えて、 データベースの更新されたページに対する更新前情報を取得する。
ロールバック後のトランザクション再実行に備えて、 データベースの更新されたページに対する更新後情報を取得する。
ロールフォワードに備えて、 データベースの更新されたページに対する更新後情報を取得する。(正解)

DBMSが取得するログに関する記述【午前2 解説】

要点まとめ

  • 結論:DBMSのログはロールフォワード復旧のために更新後情報を記録することが適切です。
  • 根拠:ロールフォワードは障害発生後に更新後の状態を再現するため、更新後情報が必要です。
  • 差がつくポイント:更新前情報はロールバック用、更新後情報はロールフォワード用と役割が明確に分かれています。

正解の理由

選択肢エは「ロールフォワードに備えて、更新後情報を取得する」と述べています。
ロールフォワードは障害発生後にログを使って更新操作を再適用し、データベースを最新状態に戻す復旧方法です。
このため、更新後のデータ(更新後情報)をログに記録しておく必要があります。
したがって、エが正解です。

よくある誤解

更新前情報はロールバックに使うため、ロールフォワードに使うと混同しやすいです。
また、トランザクションの取消しと復旧の目的を混同しがちです。

解法ステップ

  1. ログの役割を「ロールバック」と「ロールフォワード」に分けて理解する。
  2. ロールバックは更新前情報を使い、トランザクションの取消しに備える。
  3. ロールフォワードは更新後情報を使い、障害復旧に備える。
  4. 選択肢の説明とログの役割を照合し、正しい組み合わせを選ぶ。

選択肢別の誤答解説

  • ア:更新後情報はロールフォワード用であり、トランザクション取消しには更新前情報が必要です。
  • イ:更新前情報は媒体障害からの復旧(ロールバック)に使いますが、復旧はロールフォワードも含みます。
  • ウ:ロールバック後の再実行は通常トランザクションの再試行であり、更新後情報ではなく更新前情報が重要です。
  • :ロールフォワードに備えて更新後情報を取得する点が正しい。

補足コラム

DBMSのログには「UNDOログ」と「REDOログ」があります。
UNDOログは更新前情報を記録し、トランザクションの取り消し(ロールバック)に使います。
REDOログは更新後情報を記録し、障害復旧時のロールフォワードに使われます。
この二つのログを適切に管理することで、データベースの整合性と耐障害性が保たれます。

FAQ

Q: ロールバックとロールフォワードの違いは何ですか?
A: ロールバックはトランザクションの取消しで更新前情報を使い、ロールフォワードは障害復旧で更新後情報を使います。
Q: なぜ更新後情報がロールフォワードに必要なのですか?
A: 障害発生後にログから更新操作を再適用し、最新のデータ状態を復元するためです。

関連キーワード: DBMSログ、ロールバック、ロールフォワード、UNDOログ、REDOログ、障害復旧、トランザクション管理
← 前の問題へ次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

データベーススペシャリスト
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2025 情報処理技術者試験対策アプリ

このサイトについてプライバシーポリシー利用規約特商法表記開発者について