| トランザクション | データベースに対する Read 回数 と Write 回数 |
|---|---|
| T1,T2 | Read 10,Write 20 |
| T3,T4 | Read 100 |
| T5,T6 | Read 20,Write 10 |
| ロールフォワード | ロールバック | |
|---|---|---|
| ア | T2,T5 | T6 |
| イ | T2,T5 | T3,T6 |
| ウ | T1,T2,T5 | T6 |
| エ | T1,T2,T5 | T3,T6 |

応用情報技術者試験 平成28年度秋期 午前 問30「DBMS をシステム障害発生後に再立上げするとき,ロールフォワードすべきトランザ…」の正解と解説です。応用情報技術者試験の「テクノロジ系」分野の過去問で、これまでの受験者の正答率は約49%です。
ア. ロールフォワード: T2,T5 ロールバック: T6
正答率 49.4%(1,309人中 647人が正解)
DBMS再立上げ時の障害回復は「コミット済みか」「チェックポイントを経過したか」「そもそも更新(Write)したか」で判定する。チェックポイント時に主記憶上のデータが補助記憶へ書き出されるため、コミット済でもチェックポイント後に障害が起きたものはディスク未反映として消失し、更新後ログでコミット時点まで再現する“ロールフォワード”が必要になる。一方、未コミットのまま障害発生したものはチェックポイントで部分反映された更新を更新前ログで取り消す“ロールバック”が必要だが、Writeが一度もない読取り専用トランザクションはDBを変更しないためどちらの操作も不要である。この問題ではT3・T4が “Read 100” のみで更新しないため対象外となり、ロールフォワード=T2・T5、ロールバック=T6 の組合せ(ア)が適切となる。
応用情報技術者試験 平成28年度秋期 午前 の過去問一覧に戻る・問30