ITパスポート試験 / 令和6年度 ITパスポート試験 公開問題 / 問74
certification-simodake-work

令和6年度 ITパスポート試験 公開問題 問74 解説 トランザクション処理

トランザクション処理に関する記述のうち,適切なものはどれか。

  1. コミットとは,トランザクションが正常に処理されなかったときに,データベースをトランザクション開始前の状態に戻すことである。
  2. 排他制御とは,トランザクションが正常に処理されたときに,データベースの内容を確定させることである。
  3. ロールバックとは,複数のトランザクションが同時に同一データを更新しようとしたときに,データの矛盾が起きないようにすることである。
  4. ログとは,データベースの更新履歴を記録したファイルのことである。 ✓ 正答

解説

解答のポイント

この問題は、データベースのトランザクション処理における主要な4つの用語(コミット、ロールバック、排他制御、ログ)の定義を正しく理解しているかを確認する問題です。それぞれの言葉の「役割」と「目的」をペアで覚えることで、消去法を用いずに即座に正解を導くことができます。

各用語の正しい定義と整理

選択肢の誤りを正しながら、正しい定義を確認しましょう。

・コミット(Commit) データベースの更新処理を「確定」させることです。処理が成功した後に、その変更をデータベースに正式に反映させます。

・ロールバック(Rollback) データベースの更新処理を「取り消す」ことです。処理の途中でエラーが発生したり、正常に完了しなかったりした場合に、処理開始前の状態に戻してデータの整合性を保ちます。

・排他制御(Exclusive Control) 複数の人が同時に同じデータを書き換えようとした際、順番待ちをさせたり、アクセスを制限したりしてデータの矛盾を防ぐ仕組みのことです。「データの交通整理」とイメージすると分かりやすいでしょう。

・ログ(Log) データベースに対して「いつ、誰が、どのような操作をしたか」という履歴を記録したファイルのことです。万が一、システム障害が発生した際に、このログを参照することで、障害前の状態にデータを復旧させる(リカバリする)ために非常に重要な役割を果たします。

選択肢の誤り部分は、用語の定義が入れ替わっています。アとイは用語が逆であり、ウは排他制御の定義がロールバックの説明と混同されている、あるいは定義自体が誤っています。エのみが正しい定義を述べています。

なぜこの知識が必要なのか

データベースは、銀行の振込処理のように「Aさんの口座から引き落とし、Bさんの口座に入金する」という複数の操作をセットで行う必要があります。もし途中でシステムが止まったら、Aさんからお金が消えたままBさんに入金されないといった致命的な事態になります。

このような事態を避けるために、ITの世界では「ACID特性」という考え方が重要視されます。今回登場した用語は、このACID特性を実現するための不可欠な手段です。ITパスポート試験において、この領域はシステムの信頼性や安全性を確保する上での基本中の基本として頻出します。現場のシステム運用においても、障害復旧時にログファイルを解析して原因を特定したり、デッドロック(排他制御による膠着状態)を調査したりと、日々の業務で直結する実用的な知識です。

試験に向けた覚え方のヒント

・コミット=確定(完了!) ・ロールバック=巻き戻し(やり直し!) ・排他制御=交通整理(順番待ち) ・ログ=日記(操作の記録)

このようにキーワードを一つ結びつけるだけで、記憶の定着が格段に良くなります。特にロールバックとログは、「障害からの復旧」という場面でセットで登場することが多いため、併せて覚えておくと理解が深まります。

参考リンク

学習の記録にははてなブックマーク!

気づいたこと・覚えたことをコメントにメモしよう