修了試験 2015-07-26実施分 基本情報技術者試験 問30
トランザクションTはチェックポイント取得後に完了したが,その後にシステム障害が発生した。 トランザクションTの更新内容をその終了直後の状態にするために用いられる復旧技法はどれか。 ここで,チェックポイントの他に,トランザクションログを利用する。
正答4
解説
正解は4です。 システム障害後のデータベースの復旧技法を問う問題です。 トランザクションTはチェックポイントの後に完了(コミット)しましたが、その更新がディスク上のデータベースに書き込まれているとは限りません。 そこで、ログを使ってTの更新を再現する必要があります。 【選択肢別解説】 1:× 2相ロックは、複数のトランザクションを同時に実行するときの排他制御の方式です。 ロックを獲得する段階と解除する段階を分けるもので、障害からの復旧技法ではありません。 2:× シャドウページは、更新するページの複製を作り、元のページを残しておく方式です。 更新前の状態に戻すのに使う仕組みで、本問のログを使った再現とは異なります。 3:× ロールバックは、更新前ログを使って、未完了のトランザクションの更新を取り消す技法です。 Tは完了しているので、取り消すのではなく反映させる必要があります。 4:○ ロールフォワードは、チェックポイント時点の状態から、更新後ログを使って更新をやり直す技法です。 完了済みのTの更新を、終了直後の状態まで再現できます。 【ポイント】 障害時点で完了していたトランザクションはロールフォワード、未完了のものはロールバックで処理します。 ロールフォワードには更新後ログ、ロールバックには更新前ログを使います。まとめて解く
修了試験 2015-07-26実施分を通しで解く(80問)→