令和2年度 10月 午前Ⅱ 問21
データベース
コミット処理を完了するタイミング
DBMS がトランザクションのコミット処理を完了するタイミングはどれか。
- アアプリケーションプログラムの更新命令完了時点
- イチェックポイント処理完了時点
- ウログバッファへのコミット情報書込み完了時点
- エログファイルへのコミット情報書込み完了時点
答えと解説を見る
✓ これが正解エログファイルへのコミット情報書込み完了時点
解説
コミット情報がログファイルに書き込まれた時点で、コミットは完了します。
コミットは、トランザクションの更新を確定させる処理です。確定したと利用者に返した後で障害が起きても、その更新は失われてはいけません。そこで DBMS は、コミット情報を、ディスクなどの消えない記憶媒体にあるログファイルへ書き込み終えた時点で、コミットを完了とします。データベース本体への反映がまだでも、ログが残っていれば、障害の後にログをもとに更新をやり直して回復できます。先にログを書き、データベースへの書出しは後でよいという考え方で、ログ先行書込みと呼ばれます。確定の基準は、障害が起きても消えない場所に記録が残ったかどうかです。
ほかの選択肢はなぜ違うのか
- アアプリケーションプログラムの更新命令完了…:アプリケーションプログラムの更新命令が終わった時点では、変更はまだ確定していません。この後に取り消されることもあり、障害が起きれば更新は失われるので、コミットの完了とはいえません。
- イチェックポイント処理完了時点:チェックポイントは、バッファにたまった更新をデータベースへまとめて書き出す節目で、コミットとは別の周期で行われます。チェックポイントを待ってから完了とすると、応答が大きく遅れてしまいます。
- ウログバッファへのコミット情報書込み完了時…:ログバッファは主記憶の上にあるため、電源の断などの障害が起きると中身が消えるおそれがあります。ここに書いただけでは記録が残る保証がないので、まだコミットを完了とはできません。
この問題の用語
- トランザクションデータベースへの一連の処理をひとまとめにした単位のこと。途中で失敗すると開始前の状態へ戻され、中途半端な更新が残りません。
- DBMSデータベースを管理するソフト。複数の処理が同じデータを同時に更新しても矛盾しないよう、排他制御などを行います。
出典:令和2年度 10月 情報処理安全確保支援士試験 午前Ⅱ 問21
同じ用語が出る問題
- 令和7年度 秋期 午前Ⅱ 問21:コミット処理を完了するタイミング(トランザクション)
- 令和5年度 秋期 午前Ⅱ 問21:DBMSのデータディクショナリ(DBMS)
- 令和4年度 秋期 午前Ⅱ 問25:SaaSに関する問題(DBMS)
- 令和3年度 春期 午前Ⅱ 問21:デッドロックに関する問題(トランザクション)
- 平成30年度 春期 午前Ⅱ 問21:コミットに関する問題(トランザクション)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)