平成29年 秋期 ITサービスマネージャ 午前II 問21

WAL(Write Ahead Log)プロトコルの目的に関する説明のうち、適切なものはどれか。

 ア  実行中のトランザクションを一時停止させることなく、チェックポイント処理を可能にする。
 イ  デッドロック状態になっているトランザクションの検出を可能にする。
 ウ  何らかの理由でDBMSが停止しても、“コミット済みであるがデータベースに書き込まれていない更新データ”の回復を可能にする。
 エ  ログを格納する記録媒体に障害が発生しても、データベースのデータ更新を可能にする。


答え ウ


解説
WALはデータベースの更新の前に、更新内容をログに書き込むため、何らかの理由でDBMSが停止しても、コミット済みであるがデータベースに書き込まれていない更新データの回復が可能(ウ)になります。
WALは以下の手順で行われます。

  1. begin transactionレコードの書出し
  2. ログに更新前レコードの書出し
  3. ログに更新後レコードの書出し
  4. データベースの実更新
  5. commitレコードの書出し
  6. end transactionレコードの書出し


キーワード
・WAL

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

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

戻る 一覧へ 次へ