障害回復(ロールフォワード・ロールバック)とは?しょうがいかいふく
障害回復(ロールフォワード・ロールバック)とは、チェックポイント時点の状態と、その後の更新を記録したログ(ジャーナル)を突き合わせて、データベースを矛盾のない状態へ戻す処理。コミット済みなのに反映が失われた更新を更新後ログから再現するのがロールフォワード(フォワードリカバリ)、コミットしていない中途半端な更新を更新前ログで打ち消すのがロールバック(バックワードリカバリ)である。
最終更新:2026-10-06
この語が出る過去問を解く →背景
性能のためにDBMSは更新をいったんメモリ上のバッファへ置き、ディスクへの書き出しをまとめて行う。この遅延があるため、障害の瞬間には「コミット済みなのにディスクにない更新」と「ディスクにあるのにコミットされていない更新」が同時に存在しうる。どちらもそのままでは原子性と耐久性が崩れるので、前者を足し後者を引くという二方向の操作が要る。ログを先に書く約束がこの回復を成立させている。
具体例
電源断のようなシステム障害では、チェックポイント以降のログだけを見て、コミット済みをロールフォワード、未コミットをロールバックして再開する(ウォームスタート)。ディスク故障などの媒体障害ではログだけでは足りず、バックアップをリストアしたうえで、そこから先の更新後ログをロールフォワードして現在へ追いつかせる。
試験での引っ掛け
どちらを使うかは障害の種類ではなく、そのトランザクションがコミット済みかどうかで決まる。コミット済みなら更新後ログで前へ進め、未コミットなら更新前ログで後ろへ戻すので、使うログも向きも対になっている。混同しやすいのは媒体障害で、ここだけはロールフォワードの前にバックアップからのリストアが必要になり、ログだけでは復旧できない。
関連用語
出た過去問
出典:令和3年度 秋期 応用情報技術者試験 午前 問27(IPA)
データベースの障害回復処理に関する記述として、適切なものはどれか。
正解:システムが媒体障害以外のハードウェア障害によって停止した場合、チェックポイントの取得以前に終了したトランザクションについての回復作業は不要である。
要点:チェックポイント以前にコミット済みの更新は回復不要
チェックポイントとは、その時点までの更新内容が確実にデータベースへ反映されたことを保証する同期点である。チェックポイント取得より前に完了(コミット)したトランザクションの更新はすでに反映済みなので、ハードウェア障害からの再起動時に改めて回復(ロールフォワード)する必要はない。媒体障害以外の障害ではバックアップからのリストアも不要である。
出典:令和4年度 秋期 応用情報技術者試験 午前 問29(IPA)
チェックポイントを取得するDBMSにおいて、図のような時間経過でシステム障害が発生した。前進復帰(ロールフォワード)によって障害回復できるトランザクションだけを…
正解:T4とT5
要点:ロールフォワードの対象はチェックポイント後のコミット済み処理
ロールフォワードは、チェックポイント時点の内容にログの更新後情報を反映して、コミット済みの更新を再現する回復方法です。対象になるのは、チェックポイント後に更新が確定(コミット)し、その内容が障害でディスクに反映されないまま失われた可能性のあるトランザクションで、ここではT4とT5が当てはまります。障害時点で未完了のT2・T3はロールバックで取り消します。
出典:令和4年度 春期 応用情報技術者試験 午前 問29(IPA)
undo/redo方式を用いた障害回復におけるログ情報の要否として、適切な組合せはどれか。
正解:更新前情報:必要/更新後情報:必要
要点:undoに更新前、redoに更新後の情報が両方とも要る
undo/redo方式では、障害発生時にコミット前のトランザクションの変更を取り消し(undo)、コミット済みで反映されていない変更をやり直す(redo)。取消しには変更前の値が、やり直しには変更後の値がそれぞれ必要になる。したがってログには更新前情報と更新後情報の両方を記録しておかなければならない。
出典:令和6年度 秋期 応用情報技術者試験 午前 問31(IPA)
DBMSのチェックポイントに関する記述として、適切なものはどれか。
正解:データベースバッファの内容を二次記憶に書き出した時点を指し、障害回復処理の際に、その時点までにコミットされたトランザクションの回復作業を不要にできる。
要点:チェックポイントはバッファを書き出し障害回復の範囲を狭める
チェックポイントは、DBMSがデータベースバッファ上の更新内容をまとめて二次記憶へ書き出す時点である。この時点までにコミット済みのトランザクションの更新は既にディスクへ反映されているため、障害回復時にログからロールフォワードし直す必要がない。結果として、回復処理はチェックポイント以降のログだけを見ればよくなり、復旧時間が短縮される。
出典・参考
公式シラバスの3 技術要素 > 1. データベース方式 > (2) データベース管理システムに掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。