この概念が出た関連問題

この試験の対策ガイド

情報処理安全確保支援士試験 対策ガイド

合格率・勉強法・参考書の選び方をまとめています

見る →
答えと解説を見る(先に解くのがおすすめ)

正解は ア

解説

DBMSの障害回復(Recovery)とトランザクション管理の問題です。図([DIAGRAM_HERE])はシステム障害発生時点でのトランザクション T1〜T6 の状態を示しています。ロールフォワード(Roll Forward)の対象:チェックポイント前にコミット済みだが、DBに反映されていないトランザクション(ログからDBを再適用)。ロールバック(Roll Back)の対象:チェックポイント後に開始してコミットされていないトランザクション(未完了トランザクション)。設問の図から:T2(ロールフォワード対象:コミット済み・未反映)、T5(ロールフォワード対象:コミット済み・未反映)、T6(ロールバック対象:未コミット)と判断されます。正解は a(ロールフォワード:T2, T5、ロールバック:T6)。

なぜ他の選択肢は違うのか

選択肢 イ
T3 をロールバックに追加していますが、図の状態からT3はチェックポイント前にコミット済みのため、ロールバック対象ではありません。コミット済みトランザクションはロールバックできません。
選択肢 ウ
T1 をロールフォワードに追加していますが、T1はチェックポイント前に完了(DBへの反映も完了)しているため、再適用の必要がありません。
選択肢 エ
T1 のロールフォワードと T3 のロールバックの両方を誤って含めています。チェックポイントとトランザクション開始・コミット・障害の時系列を正確に読み取る必要があります。

解くときのポイント

障害回復の判断基準:①チェックポイント後にコミット済み=ロールフォワード(ログでDBを再適用)、②障害発生時点でコミットされていない(進行中)=ロールバック(未完了を取り消し)、③チェックポイント前にコミット完了=何もしない(DBに反映済み)。トランザクションの3状態を図で確認する。