SC情報処理安全確保支援士試験 午前Ⅱ

令和2年度10月 情報処理安全確保支援士 午前Ⅱ 問21

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

問題

DBMSがトランザクションのコミット処理を完了するタイミングはどれか。

選択肢

  1. ア
    アプリケーションプログラムの更新命令完了時点
  2. イ
    チェックポイント処理完了時点
  3. ウ
    ログバッファへのコミット情報書込み完了時点
  4. エ
    ログファイルへのコミット情報書込み完了時点
解き方のヒントを見る

コミット完了は「データ本体をディスクに書いた瞬間」ではないよ

トランザクションのコミットは、更新したデータそのものがすぐディスクに保存されることを意味するわけではないよ。たとえば、お店のレジで売上をまず確実な控え帳に記録しておけば、あとでレジ本体が止まっても復元できるよね。データベースでも同じで、少なくとも「このトランザクションはコミット済みだよ」という情報がログファイルにきちんと永続化され、障害が起きても回復できる状態になった時点で、コミット完了とみなされるんだ。

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

この問題では、更新命令が終わったかどうかや、ログバッファに一時的に書かれたかどうかではなく、「障害が起きても戻せるように、必要な情報が永続化された地点」を選べるかがポイントだよ。つまり、ただメモに書いた段階ではなく、なくならない控えとして保存されたかどうかを見よう。

コミット成立条件

WAL の考え方では、まずログへ確実に書き出されていれば、障害後でも再実行や回復で整合性を保てる。

コミット情報\n-> ログファイルへ永続化\n-> コミット完了

確認ポイント

  • 更新命令の終了だけでは永続化保証にならない。
  • ログバッファ内だけでは障害時に失われる。
  • ログファイル書込み完了時点を選ぶ。
正解と解説を見る

正解

エ

出典

問題文と解答は IPA 公開の過去問題冊子・解答例を基にしています。

選択肢ア

不正解だよ。アプリが更新命令を出し終えても、それは店員さんに「これ変更してね」とお願いした段階に近いよ。まだ正式な記録として残っていないので、障害が起きたときに確実に守れるとは限らないんだ。

選択肢イ

不正解だよ。チェックポイントは、データベースの状態を整理して「ここまで片付けたよ」と記録する区切りみたいなもの。引っ越し作業で途中まで荷物をまとめたタイミングに近いけど、「この取引は絶対に確定した」と決まる瞬間そのものではないんだ。

選択肢ウ

不正解だよ。ログバッファは一時メモのような場所で、まだ本棚にしまった正式な記録ではないんだ。メモ帳に「確定」と書いても、停電で消えたら困るよね。だからログファイルに書き込まれるまでは、確実にコミット完了とはいえないよ。

選択肢エ(正解)

正解だよ。コミットは、取引内容を後で必ず復元できる場所、つまりログファイルに書き終えた時点で確定するんだ。窓口で申請書を出しただけでなく、正式な台帳に記録された瞬間に「受付完了」となるイメージだよ。

出典:独立行政法人 情報処理推進機構(IPA)令和2年度10月 情報処理安全確保支援士試験 午前Ⅱ 問21(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

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