| トランザクション | データベースに対する Read 回数 と Write 回数 |
|---|---|
| T1,T2 | Read 10,Write 20 |
| T3,T4 | Read 100 |
| T5,T6 | Read 20,Write 10 |

DBMS をシステム障害発生後に再立上げするとき,ロールフォワードすべきトランザクションとロールバックすべきトランザクションの組合せとして,適切なものはどれか。ここで,トランザクションの中で実行される処理内容は次のとおりとする。 図に示すように,T1 はチェックポイント前にコミット済み,T2 はチェックポイント後にコミット済み,T3・T4 はコミットされておらず,T5 はチェックポイント後にコミット済み,T6 はコミットされていない状態で障害が発生した。
ア. ロールフォワード:T2,T5 ロールバック:T6
障害回復におけるロールフォワード(前進復帰)とロールバック(後退復帰)の対象を判定する問題です。原則は,チェックポイント後にコミット済みのトランザクションは更新がディスクに反映されていない可能性があるためロールフォワードで再反映し,コミットせずに障害を迎えたトランザクションはロールバックで取り消します。さらに本問の重要な着眼点として,T3・T4はRead回数のみ(Write 0)でデータベースを更新しないため,未コミットでもロールバックの対象になりません。T1はチェックポイント前にコミット済みで更新が既にディスクに反映されているためロールフォワード不要です。よってロールフォワード=T2・T5,ロールバック=T6となり正解はアです。
応用情報技術者試験 令和5年度秋期 午前 の過去問一覧へ戻る・問30