データベーススペシャリスト試験 2013年 午前2 問14
データベースの障害回復処理に関する記述のうち、適切なものはどれか。
ア:異なるトランザクション処理プログラムが、同一データベースを同時更新することによって生じる論理的な矛盾を防ぐために、データのブロック化が必要となる。
イ:システムが媒体障害以外の原因によって停止した場合、チェックポイントの取得以前に終了したトランザクションについての回復作業は不要である。(正解)
ウ:データベースの媒体障害に対して、バックアップファイルをリストアした後、ログファイルの更新前情報を使用してデータの回復処理を行う。
エ:トランザクション処理プログラムがデータベースの更新中に異常終了した場合には、ログファイルの更新後情報を使用してデータの回復処理を行う。
解説
データベースの障害回復処理に関する記述【午前2 解説】
要点まとめ
- 結論:システム停止時、チェックポイント以前に終了したトランザクションは回復不要である。
- 根拠:チェックポイントは正常終了したトランザクションの状態を確定し、回復範囲を限定するため。
- 差がつくポイント:ログファイルの役割とチェックポイントの意味を正確に理解し、媒体障害と論理障害の違いを区別すること。
正解の理由
選択肢イは「システムが媒体障害以外の原因で停止した場合、チェックポイント以前に終了したトランザクションの回復は不要」と述べています。
これは、チェックポイント時点で正常終了したトランザクションの状態がディスクに確定しているため、再度回復処理を行う必要がないことを示しています。
したがって、回復処理はチェックポイント以降に未完了のトランザクションに限定され、効率的な障害回復が可能です。
これは、チェックポイント時点で正常終了したトランザクションの状態がディスクに確定しているため、再度回復処理を行う必要がないことを示しています。
したがって、回復処理はチェックポイント以降に未完了のトランザクションに限定され、効率的な障害回復が可能です。
よくある誤解
ログファイルの更新前情報と更新後情報の使い分けを誤解しやすいです。
また、媒体障害と論理的障害の区別が曖昧になると回復処理の理解が混乱します。
また、媒体障害と論理的障害の区別が曖昧になると回復処理の理解が混乱します。
解法ステップ
- 障害回復処理の基本概念を確認する(ログファイル、チェックポイントの役割)。
- チェックポイント以前に終了したトランザクションの状態が確定していることを理解する。
- 媒体障害とそれ以外の障害の違いを区別する。
- 各選択肢の記述がこれらの知識と合致しているか検証する。
- 正しい記述(イ)を選択する。
選択肢別の誤答解説ステップ
- ア:データのブロック化は論理的矛盾防止の直接的手段ではなく、排他制御やロック機構が主役です。
- イ:正解。チェックポイント以前に終了したトランザクションは回復不要であることを正しく述べています。
- ウ:媒体障害回復時はログの更新後情報(REDO)を使い、更新前情報(UNDO)は論理障害回復に用います。
- エ:異常終了時は更新前情報(UNDO)を使ってロールバックし、更新後情報(REDO)は正常終了トランザクションの回復に使います。
補足コラム
データベースの障害回復は「UNDO」と「REDO」の2種類の処理に分かれます。
UNDOは異常終了したトランザクションの変更を取り消し、REDOは正常終了したトランザクションの変更を確実に反映させます。
チェックポイントはこれらの処理範囲を限定し、回復時間短縮に寄与します。
UNDOは異常終了したトランザクションの変更を取り消し、REDOは正常終了したトランザクションの変更を確実に反映させます。
チェックポイントはこれらの処理範囲を限定し、回復時間短縮に寄与します。
FAQ
Q: チェックポイントとは何ですか?
A: チェックポイントは、データベースの状態をディスクに確定し、回復処理の起点を示すポイントです。
A: チェックポイントは、データベースの状態をディスクに確定し、回復処理の起点を示すポイントです。
Q: 媒体障害と論理障害の違いは?
A: 媒体障害はハードウェア故障など物理的障害、論理障害はプログラムエラーやトランザクションの異常終了など論理的な問題です。
A: 媒体障害はハードウェア故障など物理的障害、論理障害はプログラムエラーやトランザクションの異常終了など論理的な問題です。
関連キーワード: 障害回復, チェックポイント, ログファイル, トランザクション, UNDO, REDO, データベース管理