令和3年度 秋期 応用情報技術者試験 午前 問27
テクノロジ/データベースデータベースの障害回復処理に関する記述として,適切なものはどれか。
出典:令和3年度 秋期 応用情報技術者試験 午前 問27
- ア異なるトランザクション処理プログラムが,同一データベースを同時更新することによって生じる論理的な矛盾を防ぐために,データのブロック化が必要となる。
- イシステムが媒体障害以外のハードウェア障害によって停止した場合,チェックポイントの取得以前に終了したトランザクションについての回復作業は不要である。
- ウデータベースの媒体障害に対して,バックアップファイルをリストアした後,ログファイルの更新前情報を使用してデータの回復処理を行う。
- エトランザクション処理プログラムがデータベースの更新中に異常終了した場合には,ログファイルの更新後情報を使用してデータの回復処理を行う。
正解:イ
解説
チェックポイントを取得しておくと,その時点でのデータベースの状態が確定します。媒体障害以外の障害(システムダウンなど)からの回復では,チェックポイント以降のトランザクションだけをログを用いてロールフォワード・ロールバックすればよく,チェックポイント以前に終了したトランザクションの回復作業は不要です。
選択肢ごとの解説
- ア誤り。同時更新による論理的矛盾を防ぐために必要なのは排他制御(ロック)であり,データのブロック化ではありません。
- イ正しい。チェックポイント取得以前に終了(コミット)したトランザクションの結果はデータベースに反映済みとして扱えるため,回復作業は不要です。
- ウ誤り。媒体障害では,バックアップファイルをリストアした後,ログの更新後情報を使用してロールフォワードします。更新前情報を使うのはロールバックです。
- エ誤り。更新中に異常終了したトランザクションはコミットされていないため,ログの更新前情報を使用してロールバック(更新の取消し)を行います。