AUシステム監査技術者試験 午前Ⅱ
平成30年度春期 システム監査技術者 午前Ⅱ 問17
問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。
問題
選択肢
- アバックアップ取得後でコミット前に中断した全てのトランザクションをロールバックする。
- イバックアップ取得後でコミット前に中断した全てのトランザクションをロールフォワードする。
- ウバックアップ取得後にコミットした全てのトランザクションをロールバックする。
- エバックアップ取得後にコミットした全てのトランザクションをロールフォワードする。
解き方のヒントを見る
境界と整合性を見極める視点
トランザクションを一つのまとまりとして捉え、処理の開始点と終了点、途中で失敗した場合の扱い、確定前後でデータがどう保たれるかを順に整理し、選択肢の表現が同じ観点を述べているか比較しましょう。
この問題で問われていること
この問題では、個々の処理内容を暗記するよりも、複数の更新が同じ単位として扱われる範囲と、その途中で状態が変わる可能性を一つの観点として確認し、説明の前提が揃っているかを見ます。
視点
境界を考えるときは、関連する処理をどこからどこまで同じまとまりとして扱うかを整理します。次に、そのまとまりの内外でデータ状態の扱いがどう区別されるか、用語の使われ方と前提条件を読み比べます。
確認ポイント
- 処理の開始と終了が、同じまとまりとして説明されているか確認する
- 途中で処理が中断した場合の状態について、前提を整理する
- データの整合性という言葉が、どの範囲を指しているか確認する
正解と解説を見る
正解
エ
解説
媒体障害から復旧する際は、バックアップをリストアした後、バックアップ取得後に完了した更新をトランザクションログから再適用して、障害発生直前に近い状態へ戻す。
理由
バックアップには取得時点までのデータしか含まれない。その後にコミットされたトランザクションの更新をログから再実行することで、バックアップ後の確定済み変更をデータベースへ反映できる。
比較
コミット前に中断したトランザクションは未完了のため、通常は取り消しの対象となる。一方、コミット済みのトランザクションは確定した変更として扱い、復旧時には再適用する。
選択肢ア
これは不正解だよ。バックアップ取得後でコミット前に中断したトランザクションは、処理が完了していないため、復旧時に確定済み更新として扱う対象ではない。この選択肢はロールバックという操作自体は未完了処理に関係するが、設問が問うログを用いた処理の対象と方向を正しく表していない。
選択肢イ
これは不正解だよ。ロールフォワードは、バックアップ後に確定した更新をログから再適用するための操作であり、コミット前に中断した処理へ行うものではない。未完了のトランザクションを再実行すると、確定していない変更を復旧後のデータへ反映することになる。
選択肢ウ
これは不正解だよ。バックアップ取得後にコミットしたトランザクションは、障害発生前に処理が完了しているため、復旧後にも反映させるべき確定済みの更新である。それをロールバックすると、正常に完了した変更を取り消すことになり、復旧の目的と合わない。
選択肢エ(正解)
これは正解だよ。バックアップ取得後にコミットしたトランザクションは、バックアップにはまだ含まれていないが、障害発生前には確定している。そこでトランザクションログを使ってその更新を再適用し、リストアしたデータベースを確定済みの状態へ進める。
学習のポイント
ロールバックとロールフォワードの対象となるトランザクション状態の違いを整理する。
出典:独立行政法人 情報処理推進機構(IPA)平成30年度春期 システム監査技術者試験 午前Ⅱ 問17(公式資料:問題冊子(PDF) / 解答例)
関連する過去問一覧
IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針