トランザクション処理(全63問中6問目)

undo/redo方式を用いた障害回復におけるログ情報の要否として,適切な組合せはどれか。

出典:令和4年春期 問29

29.png
正解 問題へ
分野:テクノロジ系
中分類:データベース
小分類:トランザクション処理
解説
undo/redo方式は、データベースにシステム障害が起こったときに、更新前ログを使用したロールバック(undo)と更新後ログを使用したロールフォワード(redo)を組み合わせてデータベースを回復する方法です。undoは行った操作の取り消し、redoは行った操作の再実行という意味です。

障害発生時に進行中だったトランザクションは、一部の更新がディスクに反映されているので、ロールバックを実行してトランザクション開始前の状態に戻します(④)。チェックポイント後にコミットされたトランザクションは、ディスクからコミットの内容が失われているので、ロールフォワードを実行してデータベースにトランザクションの処理結果を反映させます(②③)。
29a.png
更新前情報はundoで必要、更新後情報はredoで必要なので、正しい組合せは「ア」です。

なお、コミットするまでデータベースを一切更新しない遅延更新の管理機構ではロールバックが不要なので、障害回復時にredoのみを行いundoを行わない「no-undo/redo方式」が使われることもあります。

Pagetop