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

更新前情報と更新後情報をログとして利用する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ではデータベースの更新を行う前に、ログに更新後レコードの情報の書出しをするのが特徴で、順番としては以下のようになります。

  1. begin transactionレコードの書出し … @
  2. ログに更新前レコードの書出し … B
  3. ログに更新後レコードの書出し … C
  4. データベースの実更新 … A
  5. commitレコードの書出し … D
  6. end transactionレコードの書出し … E
したがって、@→B→C→A→D→E(エ)になります。


キーワード
・WAL

キーワードの解説
  • WAL(Write Ahead Log)
    トランザクションで発生するデータベースのレコードやインデックスの変更を行う前に、変更を行う旨の情報(ログ)の書出しを行うことです。

もっと、「WAL」について調べてみよう。

戻る 一覧へ 次へ