平成25年度 春期 データベーススペシャリスト試験 午前II 問18
【問題18】
WAL(Write Ahead Log)プロトコルの目的に関する説明のうち、適切なものはどれか。
実行中のトランザクションを一時停止させることなく、チェックポイント処理を可能にする。
デッドロック状態になっているトランザクションの検出を可能にする。
何らかの理由でDBMSが停止しても、コミット済みであるがデータベースに書き込まれていない更新データの回復を可能にする。
ログを格納する記録媒体に障害が発生しても、データベースのデータ更新を可能にする。
【解説】
ア: 実行中のトランザクションを一時停止させることなく、チェックポイント処理を可能にする。
誤り。WALプロトコルはトランザクションの実行中にログを先に書き込む仕組みですが、チェックポイント処理自体を一時停止させることなく行う機能は提供しません。
イ: デッドロック状態になっているトランザクションの検出を可能にする。
誤り。WALプロトコルはトランザクションの整合性を保つためにログを保持しますが、デッドロックの検出には直接関与しません。デッドロックの検出はデータベース管理システム(DBMS)の別の機能です。
ウ: 何らかの理由でDBMSが停止しても、コミット済みであるがデータベースに書き込まれていない更新データの回復を可能にする。
正しい。WALプロトコルは、データベースに書き込まれる前にログに記録されるため、DBMSが停止しても、コミット済みのデータが回復可能になります。
エ: ログを格納する記録媒体に障害が発生しても、データベースのデータ更新を可能にする。
誤り。WALはログを保持することによりデータの整合性を保つことができますが、ログを格納する記録媒体に障害が発生すると、データの回復は難しくなります。記録媒体の障害を完全に回避する機能はありません。
【答え】
ウ: 何らかの理由でDBMSが停止しても、コミット済みであるがデータベースに書き込まれていない更新データの回復を可能にする。
出典:平成25年度 春期 データベーススペシャリスト試験 午前II 問18