令和5年度 春期 システムアーキテクト試験 午前Ⅱ 問24
テクノロジデータベース
この問題は2023(R5)春 システムアーキテクト 午前IIに出題されたものです。出題時点の法令・制度に基づく内容のため、現行の内容と一致しない場合があります。
本ページの問題文・選択肢は、原本の体裁を Web 表示用に正規化しています(改行・記号・数式・図表参照の調整)。設問の趣旨および正解に影響する変更は加えていません。
DBMSがトランザクションのコミット処理を完了するタイミングはどれか。
解答・解説を読む
正解: 選択肢エ
DBMSにおけるトランザクションのコミット処理は、ACID特性のうちの耐久性(Durability)を保証するために行われます。
耐久性を確保するためには、システム障害が発生しても更新結果が失われないように、不揮発性の記憶媒体(ディスクなど)に記録を書き込む必要があります。したがって、コミット処理が完了するのは、ログファイルへのコミット情報の書き込みが完了した時点です。
各選択肢の解説
- ア:アプリケーションプログラムの更新命令完了時点
更新命令を出しただけでは、メモリ(バッファ)上のデータが更新されただけであり、確定(コミット)されていません。 - イ:チェックポイント処理完了時点
チェックポイント処理は、メモリ上の更新済みデータをディスクに書き込み、障害回復(リカバリ)時のログ適用時間を短縮するための処理です。コミットのタイミングとは直接関係ありません。
- ウ:ログバッファへのコミット情報書込み完了時点
ログバッファは揮発性のメモリ上に存在するため、この時点でシステム障害が発生するとコミット情報が失われてしまいます。そのため、完了時点とはなりません。 - エ:ログファイルへのコミット情報書込み完了時点
正解です。ログファイル(不揮発性記憶媒体)に書き込まれることで、障害時にもデータが復旧可能となり、コミット処理完了となります。