平成21年度 春期 午前 問35
データベース
トランザクションに関する問題
トランザクション T はチェックポイント取得後に完了し,その後にシステム障害が発生した。データベースをトランザクション T の終了直後の状態に戻すために用いられる復旧技法はどれか。ここで,チェックポイントのほかに,トランザクションログが利用できるものとする。
- ア2相ロック
- イトランザクションスケジューリング
- ウロールバック
- エロールフォワード
答えと解説を見る
✓ これが正解エロールフォワード
解説
完了済みの更新はログで前へ進めて取り戻します。
起きたことを時間の順に並べると筋道が見えます。まずチェックポイントが取得され、ここまでの更新はディスクへ書き出し済みという目印が残ります。次にトランザクション T が完了し、最後にシステム障害が起きました。T は完了しているので、その結果は確定したものとして残さなければなりません。しかし完了した内容がディスクに反映されているとは限らないので、チェックポイントを起点にして、トランザクションログに残る更新後の内容をもう一度当てなおし、T の終了直後まで進めます。見分けるときの軸は、対象のトランザクションが完了しているかどうかで、取り消すのか進めるのかが決まるという点です。
ほかの選択肢はなぜ違うのか
- ア2相ロック:複数の処理が同時に走るときの排他制御の方式で、資源を確保する段階と解放する段階を分ける決まりです。障害の後に内容を取り戻す技法ではありません。
- イトランザクションスケジューリング:処理をどの順序で実行するかを取り決める仕組みです。同時に走らせても矛盾が起きないようにする側の工夫であり、壊れた後に直す手段ではありません。
- ウロールバック:障害の時点で終わっていなかった処理を取り消して元へ戻す技法です。設問の処理はすでに完了しているので、これを当てると確定した結果まで失われます。
この問題の用語
- トランザクションデータベースへの一連の処理をひとまとめにした単位のこと。途中で失敗すると開始前の状態へ戻され、中途半端な更新が残りません。
- データベースたくさんのデータを決まった形で貯め、探したり書き換えたりできるようにした仕組み。多くの人が同時に使うことを前提にしています。
- ログいつ誰が何をしたかを、機器やソフトウェアが自動で残していく記録です。あとから出来事をたどれるので、事故の調査や不正の発見に使われます。
出典:平成21年度 春期 基本情報技術者試験 午前 問35
同じ用語が出る問題
- 令和6年度 科目A 問7:原子性に関する問題(トランザクション)
- 令和5年度 科目A 問7:ACIDに関する問題(トランザクション)
- 令和元年度 秋期 午前 問29:ロックが発生しないデータ処理順序(トランザクション)
- 令和元年度 秋期 午前 問28:取ることのない状態遷移(トランザクション)
- 平成30年度 秋期 午前 問55:キャパシティ管理に関する問題(トランザクション)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)