平成24年 春期 データベーススペシャリスト 午前II 問17

更新前レコードと更新後レコードをログとして利用するDBMSにおいて、ログを先に書き出すWAL(Write Ahead Log)プロトコルに従うとして、処理@〜Eを正しい順番に並べたものはどれか。

 @  begin transactionレコードを書き出す。
 A  データベースを更新する。
 B  ログに更新前レコードを書き出す。
 C  ログに更新後レコードを書き出す。
 D  commitレコードを書き出す。
 E  end transactionレコードを書き出す。

 ア  @→A→B→C→D→E
 イ  @→B→A→C→E→D
 ウ  @→B→A→D→C→E
 エ  @→B→C→A→D→E


答え エ


解説
WALではデータベースの更新を行う前にログの書き出しを行うので、処理の順番としては

 @  begin transactionレコードを書き出す。
 B  ログに更新前レコードを書き出す。
 C  ログに更新後レコードを書き出す。
 A  データベースを更新する。
 D  commitレコードを書き出す。
 E  end transactionレコードを書き出す。
(エ)になります。


キーワード
・ログ先行書き込み

キーワードの解説

戻る 一覧へ 次へ