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

平成30年度春期 情報処理安全確保支援士 午前Ⅱ 問21

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

問題

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

選択肢

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

午前II 問21

DBMSのコミットは、単に更新命令が終わったり、ログが一時的なメモリ上のバッファに入っただけでは「完了」とは言えないよ。たとえるなら、レジで会計内容をメモ用紙に書いただけではまだ不安で、金庫にしまって初めて安心、という感じ。障害が起きても後から復旧できるように、コミットした記録が永続的なログに書き込まれた時点で、DBMSはコミット完了とみなすんだ。

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

ACID特性のうち「永続性」がポイントだよ。コミット後のデータを障害で失わないために、DBMSがログをどのタイミングで確実に保存する必要があるのかを理解しているかが問われているよ。

Commit Completion Timing

a DBMS treats commit as complete when the commit record has been written to the log file durably

must reach durable log\nlog buffer is not enough\nensures recoverability

確認ポイント

  • 永続ログ書込み完了が条件。
  • バッファ止まりではありません。
  • 復旧可能性と結び付ける。
正解と解説を見る

正解

エ

出典

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

選択肢ア

これは不正解だよ。アプリケーションの更新命令が終わっただけでは、まだ正式な記録が残ったとは限らないんだ。窓口で申込書を渡しただけで、台帳に登録されていない状態に近いよ。障害後に確実に復元できる保証がないので、コミット完了とは言えないよ。

選択肢イ

これは不正解だよ。チェックポイントは、部屋の片付けを定期的にまとめてやるようなものだよ。障害復旧を楽にするための区切りではあるけど、個々の取引が「確定した」と判断する瞬間ではないんだ。コミット完了の基準とは別物だよ。

選択肢ウ

これは不正解だよ。ログバッファは、いわば店員さんが手元のメモ帳に「この取引OK」と書いた状態なんだ。でも、そのメモ帳は停電や障害で消えるかもしれない。DBでは、コミットは後で確実に復旧できることが大事なので、まだ「正式に完了」とは言えないよ。

選択肢エ(正解)

これが正解だよ。ログファイルは、手元のメモじゃなくて金庫に入れる正式な記録みたいなものなんだ。コミット情報がログファイルに書き込まれれば、障害が起きても「この取引は確定済み」と復旧できる。だから、この時点でコミット完了と考えるよ。

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

関連する過去問一覧

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