SMITサービスマネージャ試験 午前Ⅱ

平成26年度秋期 ITサービスマネージャ 午前Ⅱ 問12

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

データベースのロールバック処理の説明はどれか。

選択肢

  1. ア
    ログの更新後情報を用いて,トランザクション開始後の障害直前の状態にまでデータを復元させる。
  2. イ
    ログの更新後情報を用いて,トランザクション開始直前の状態にまでデータを復元させる。
  3. ウ
    ログの更新前情報を用いて,トランザクション開始後の障害直前の状態にまでデータを復元させる。
  4. エ
    ログの更新前情報を用いて,トランザクション開始直前の状態にまでデータを復元させる。
解き方のヒントを見る

境界と整合性を見極める視点

処理のまとまりをどこで捉えるかに注目し、途中で中断や失敗が起きた場合に、関連する更新同士の関係がどう保たれるべきかを整理し、前後の状態を比較しながら考えてください。

この問題で問われていること

個々の操作を別々に見るのではなく、一連の処理を一つの単位として捉えられるか、その単位の前後でデータ間の関係が保たれるかを、状況に沿って一貫して確認してください。

視点

処理の開始から完了までを一つのまとまりとして捉え、途中の状態と完了後の状態を区別します。そのうえで、失敗や中断が起きた場面でも、関連する変更の扱いが一貫しているかという観点から選択肢を読み比べます。

確認ポイント

  • 処理のまとまりをどこからどこまでと捉えているか
  • 途中で失敗した場合に、関連する変更の関係がどう扱われる前提か
  • 処理の前後で、データ同士の関係を確認する基準が一貫しているか
正解と解説を見る

正解

エ

解説

ロールバックは、障害などで完了していないトランザクションの変更を取り消し、処理開始直前の状態へ戻す操作です。そのため、変更前の情報を使う。

理由

ロールバックでは、トランザクションが行った変更を取り消すため、ログに保存された更新前情報を用いる。復元先は処理の影響がなかったトランザクション開始直前の状態です。

比較

更新後情報を使って障害直前の状態へ進める処理は、障害後に確定済み処理などを反映するロールフォワードの考え方に近い。ロールバックとは目的と使用情報が異なる。

選択肢ア

これは不正解だよ。障害直前の状態まで戻すと、トランザクションが処理途中で行った変更を残してしまう可能性がある。また、更新後情報は変更を反映するための情報であり、変更を取り消すロールバックの目的には合わない。

選択肢イ

これは不正解だよ。トランザクション開始直前の状態へ戻すという復元先の考え方は適切だが、更新後情報では変更前の状態を再現できない。更新後情報を用いる点が、ロールバックの説明として誤っている。

選択肢ウ

これは不正解だよ。更新前情報を用いる点は、変更を取り消す処理に適している。しかし、障害直前の状態まで復元すると処理途中の変更を残すことになるため、トランザクションを取り消すロールバックの復元先としては適切でない。

選択肢エ(正解)

これは正解だよ。ロールバックは、未完了のトランザクションによる変更を取り消し、処理の影響がなかったトランザクション開始直前の状態へ戻す。そのため、ログの更新前情報を用いてデータを復元させる。

学習のポイント

更新前情報と更新後情報の用途、および復元先の時点を区別する。

出典:独立行政法人 情報処理推進機構(IPA)平成26年度秋期 ITサービスマネージャ試験 午前Ⅱ 問12(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針