平成25年度 春期 午前Ⅱ 問18
トランザクション処理
WALに関する問題
WAL(Write Ahead Log)プロトコルの目的に関する説明のうち,適切なものはどれか。
- ア実行中のトランザクションを一時停止させることなく,チェックポイント処理を可能にする。
- イデッドロック状態になっているトランザクションの検出を可能にする。
- ウ何らかの理由で DBMS が停止しても,コミット済みであるがデータベースに書き込まれていない更新データの回復を可能にする。
- エログを格納する記録媒体に障害が発生しても,データベースのデータ更新を可能にする。
答えと解説を見る
✓ これが正解ウ何らかの理由で DBMS が停止しても,コミット済みであるがデータベースに書き込まれていない更新データの回復を可能にする。
解説
WAL は、コミット済みで未反映の更新を、停止後に回復できるようにします。
WAL(Write Ahead Log)は、データベースのデータを書き換える前に、その更新内容をログに書き出しておくという決まりです。こうしておけば、更新データがまだバッファにあってデータベースに書き込まれていない段階で DBMS が停止しても、ログに残った更新後情報を使って、コミット済みの更新をやり直せます。反対に、未コミットの更新がデータベースに書き込まれていた場合も、ログの更新前情報で取り消せます。データより先にログ、という順序の決まりは、回復の手がかりを先に残しておくためのものだと押さえると、目的を選べます。
ほかの選択肢はなぜ違うのか
- ア実行中のトランザクションを一時停止させる…:実行中のトランザクションを止めずにチェックポイントを取る工夫は、チェックポイントの取り方の問題です。WAL はログとデータを書き出す順序の決まりで、チェックポイント処理を止めずに行うことを目的としたものではありません。
- イデッドロック状態になっているトランザクシ…:デッドロックの検出には、トランザクション間の待ちの関係を表す待ちグラフなどを使います。WAL はログとデータの書出しの順序についての決まりであり、待ちの状態を調べる仕組みではありません。
- エログを格納する記録媒体に障害が発生しても…:WAL はログが確実に残っていることを前提に回復を可能にする決まりで、ログの記録媒体そのものの障害を補うものではありません。ログの媒体の障害に備えるには、ログを二重化するなど別の対策が必要です。
この問題の用語
- ログいつ誰が何をしたかを、機器やソフトウェアが自動で残していく記録です。あとから出来事をたどれるので、事故の調査や不正の発見に使われます。
- プロトコル通信するときの、決まりごとや手順のまとまりのことをいいます。送る側と受ける側が同じものに従うことで、やり取りが成り立ちます。
- トランザクションデータベースへの一連の処理をひとまとめにした単位のこと。途中で失敗すると開始前の状態へ戻され、中途半端な更新が残りません。
- DBMSデータベースを管理するソフト。複数の処理が同じデータを同時に更新しても矛盾しないよう、排他制御などを行います。
- データベースたくさんのデータを決まった形で貯め、探したり書き換えたりできるようにした仕組み。多くの人が同時に使うことを前提にしています。
出典:平成25年度 春期 データベーススペシャリスト試験 午前Ⅱ 問18
同じ用語が出る問題
- 令和7年度 秋期 午前Ⅱ 問18:ブロックチェーンに関する問題(トランザクション)
- 令和7年度 秋期 午前Ⅱ 問17:デッドロックに関する問題(DBMS)
- 令和6年度 秋期 午前Ⅱ 問14:多版同時実行制御に関する問題(プロトコル)
- 令和5年度 秋期 午前Ⅱ 問19:DRDoSに関する問題(ログ)
- 令和5年度 秋期 午前Ⅱ 問2(プロトコル)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)