令和7年度 秋期 情報処理安全確保支援士試験 午前II 問21

DBMSがトランザクションのコミット処理を完了するタイミングはどれか。

解答・解説

正解: エ. ログファイルへのコミット情報書込み完了時点

DBMSのトランザクション処理において、コミット(確定)はデータの耐久性(Durability)を保証するために重要な処理です。この耐久性を確保するための代表的な仕組みがログ先行書込み(WAL: Write-Ahead Logging)です。

WALの原則では、データベースのデータ本体をディスクに書き込む前に、変更履歴であるログファイル(ディスク上)へコミット情報を確実に書き込むことが求められます。したがって、ログファイルへのコミット情報の書込みが完了した時点をもって、トランザクションのコミット処理が完了したとみなされます。

各選択肢の解説

  • ア: アプリケーションプログラムによるデータ更新命令完了時点では、データが主記憶上のバッファに書き込まれただけであり、ディスクへの永続化が保証されていないため誤りです。
  • イ: チェックポイント処理は、主記憶上の更新データをディスク上のデータベースに書き出し、障害発生時の回復処理にかかる時間を短縮するための仕組みです。個々のトランザクションのコミットタイミングではありません。
  • ウ: ログバッファは主記憶上に存在するため、この時点でシステム障害が発生するとコミット情報が失われる可能性があります。そのため、ログバッファへの書込み完了時点ではコミット完了とはみなされません。
  • エ: 正解です。ディスク上のログファイルへコミット情報が書き込まれることで永続性が保証され、コミット処理が完了します。

Spineチーム