令和5年度 春期 午前Ⅱ 問24
データベース
コミット処理を完了するタイミング
DBMS がトランザクションのコミット処理を完了するタイミングはどれか。
- アアプリケーションプログラムの更新命令完了時点
- イチェックポイント処理完了時点
- ウログバッファへのコミット情報書込み完了時点
- エログファイルへのコミット情報書込み完了時点
答えと解説を見る
✓ これが正解エログファイルへのコミット情報書込み完了時点
解説
コミット情報がログファイルに書き込まれた時点で完了します。
見分ける軸は、障害が起きてもそのトランザクションの結果を確実に取り戻せる時点はどこかです。DBMS は、データベースへの変更内容をログに記録しながら処理を進め、コミットの際にはコミット情報をログファイルに書き込みます。ログファイルは磁気ディスクなどの不揮発の記憶装置にあるので、書込みが終われば、その後にシステムが停止しても、ログを使ってコミット済みの変更を回復できます。だからこの時点でコミット処理を完了とします。ほかの時点では、停電や障害で内容が失われるおそれが残ります。消えない場所に書き終えた時点で完了、と覚えると選べます。
ほかの選択肢はなぜ違うのか
- アアプリケーションプログラムの更新命令完了…:更新命令が終わった時点では、変更はまだ主記憶上のバッファにあるだけかもしれず、コミットの記録も残っていません。このままシステムが止まると変更を確実には取り戻せないので、コミット完了の時点にはなりません。
- イチェックポイント処理完了時点:チェックポイント処理は、主記憶上のバッファの内容をデータベースに書き出し、回復処理の起点を作るためのものです。個々のトランザクションのコミットとは別のタイミングで行われるので、コミット完了の時点ではありません。
- ウログバッファへのコミット情報書込み完了時…:ログバッファは主記憶上の領域なので、書き込んだだけではシステムが停止するとコミット情報が失われます。不揮発の記憶装置にあるログファイルへ書き出されるまでは、コミットを完了とはできません。
この問題の用語
- DBMSデータベースを管理するソフト。複数の処理が同じデータを同時に更新しても矛盾しないよう、排他制御などを行います。
- トランザクションデータベースへの一連の処理をひとまとめにした単位のこと。途中で失敗すると開始前の状態へ戻され、中途半端な更新が残りません。
出典:令和5年度 春期 システムアーキテクト試験 午前Ⅱ 問24
同じ用語が出る問題
- 令和7年度 春期 午前Ⅱ 問24:隔離性水準に関する問題(トランザクション)
- 令和6年度 春期 午前Ⅱ 問24:デッドロックに関する問題(DBMS)
- 令和6年度 春期 午前Ⅱ 問2:インプロセスデータベースの説明(DBMS)
- 令和4年度 春期 午前Ⅱ 問24:共有ロックに関する問題(トランザクション)
- 令和4年度 春期 午前Ⅱ 問4:インプロセスデータベースの説明(DBMS)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)