ウカマル応用情報技術者ログイン

平成28年度 秋期 応用情報技術者 問30

テクノロジ系

DBMS をシステム障害発生後に再立上げするとき,ロールフォワードすべきトランザクションとロールバックすべきトランザクションの組合せとして,適切なものはどれか。ここで,トランザクションの中で実行される処理内容は次のとおりとする。

トランザクションデータベースに対する Read 回数 と Write 回数
T1,T2Read 10,Write 20
T3,T4Read 100
T5,T6Read 20,Write 10

図

図の内容(文字)
横軸は時間(左から右)。途中に縦長の「チェックポイント」の枠があり,その右側に「障害発生」を示す縦線がある。 T1:チェックポイントより前に開始し,チェックポイントより前にコミットされた。 T2:チェックポイントより前に開始し,チェックポイントをまたいで,チェックポイント後・障害発生前にコミットされた。 T3:チェックポイント後に開始し,障害発生時点までコミットされていない。 T4:チェックポイントより前に開始し,チェックポイントをまたいで,障害発生時点までコミットされていない。 T5:チェックポイント後に開始し,障害発生前にコミットされた。 T6:チェックポイント後に開始し,障害発生時点までコミットされていない。 凡例:線のみ(——)はコミットされていないトランザクションを示す。線の終端に●(——●)はコミットされたトランザクションを示す。
選択肢
正解と解説

正解 ア

ロールフォワードの対象は、チェックポイント後に更新してコミットしたT2とT5です。ロールバックの対象は、未コミットで更新(Write)を含むT6だけです。

チェックポイントの時点で、それまでの更新はデータベースに書き込まれています。ロールフォワードは、チェックポイント後にコミットした更新をログの更新後情報で反映し直す処理です。対象は、チェックポイント後にコミットしたT2とT5です。T1はチェックポイント前にコミットしたので、すでに反映済みです。ロールバックは、未コミットの更新をログの更新前情報で取り消す処理です。未コミットのT3、T4、T6のうち、T3とT4はReadだけで、データベースを変えていません。取り消す必要があるのは、Writeを含むT6だけです。

イ:T3はReadだけのトランザクションです。データベースを更新していないので、ロールバックは不要です。

ウ:T1はチェックポイント前にコミットしています。その更新はチェックポイントで反映済みなので、ロールフォワードは不要です。

エ:T1はチェックポイントで反映済みなので、ロールフォワードは不要です。T3はReadだけなので、ロールバックも不要です。

出典:平成28年度 秋期 応用情報技術者試験 問30

全年度から出題。10問で実力を判定します。登録不要。

出典:平成28年度 秋期 応用情報技術者試験 問30(独立行政法人情報処理推進機構)

解説と用語ページは生成 AI が書き、別の生成 AI が確かめています。作り方