ホーム > データベーススペシャリスト試験 > 2015年
データベーススペシャリスト試験 2015年 午前2 問05
DBMSが取得するログに関する記述として、適切なものはどれか。
ア:トランザクションの取消しに備えて, データベースの更新されたページに対する更新後情報を取得する。
イ:媒体障害からの復旧に備えて, データベースの更新されたページに対する更新前情報を取得する。
ウ:ロールバック後のトランザクション再実行に備えて, データベースの更新されたページに対する更新後情報を取得する。
エ:ロールフォワードに備えて, データベースの更新されたページに対する更新後情報を取得する。(正解)
解説
DBMSのログ取得に関する解説
データベース管理システム(DBMS)は、障害発生時の復旧やトランザクション制御のためにログを取得します。ログは、データの変更履歴を記録したもので、特に「更新前情報(Before Image)」や「更新後情報(After Image)」が重要です。
ログの主な役割
-
トランザクションの取り消し(ロールバック)
失敗したトランザクションを元の状態に戻すために、「更新前情報(更新前の値)」を用います。ロールバックはトランザクション単位で実施されます。 -
障害からの復旧
障害発生時に不完全な更新を取り消したり、途中までの更新を再実行(ロールフォワード)したりすることで、一貫性を保ちます。
選択肢の分析
ロールフォワードとログの情報
-
ロールフォワードとは障害発生後に、コミット済みの変更をログの「更新後情報」を用いて再適用(再実行)し、データベースを整合性の高い状態に戻す手法です。
-
したがって、ロールフォワードには更新後情報のログの取得が不可欠です。
まとめ
- トランザクション取り消し(ロールバック)には更新前情報のログが必要。
- ロールフォワード(障害復旧の一種)には更新後情報のログが必要。
- 問題文の正解「エ」は、ロールフォワードを前提として更新後情報を取得することを述べており適切です。
参考資料
- 『データベースシステム概論』
- 『トランザクション管理と障害回復技術』
- 各種DBMSの障害復旧メカニズムに関するドキュメント
以上の理由から、正解は エ となります。