平成18年度 技術士第一次試験問題【専門科目】
【16】情報工学部門
W−32
以下のデータベースのログが記録されていた。undo/redo方式を採用した
システム障害後の回復リスタートの手順として、最も適切なものを@〜Dの
中から選べ。
ここで[b, T]はトランザクション T の開始、[w, T, X]はトランザクション T に
よる領域 X へのwrite操作、[c, T]はトランザクション T のコミット操作を表す。
 [b, T1], [w, T1, A], [b, T2], [c, T1], [b, T3], [w, T3, B],
 [w, T2, C], [w, T3, D], [c, T2]

 @ [w, T1, A] と [w, T2, C] の undo を行う。
 A [w, T1, A] と [w, T2, C] の undo 処理を行い、つぎに[w, T3, B] と
   [w, T3, D] のredo を行う。
 B [w, T3, D] と [w, T3, B] の undo 処理を行い、つぎに[w, T1, A] と
   [w, T2, C] のredo を行う。
 C [w, T3, D] と [w, T3, B] の redo 処理を行い、つぎに[w, T1, A] と
   [w, T2, C] のundo を行う。
 D [w, T1, A] と [w, T2, C] の redo 処理を行う。




【正解】 B

undo はロールバック (元に戻す)、 redo はロールフォワード (やり直し) である。
基本的には、
更新されずにシステム障害が発生した場合は、ロールバックする。
更新後にシステム障害が発生した場合は、ロールフォワードする。

トランザクションは3つあり、それぞれに分解すると以下のとおり。
 T1:[b, T1], [w, T1, A], [c, T1]
 T2:[b, T2], [w, T2, C], [c, T2]
 T3:[b, T3], [w, T3, B], [w, T3, D],  コミットなし。

すなわち、T1、T2は更新済みであるため、redo を行う。
T3:は undo を行う。



EXCELのマクロのご相談なら ファーストマクロ 



W−31 目次 W−33
ファーストマクロ TOPページ