スポンサーリンク

基本情報技術者試験 | 令和5年度(科目A) [問7] 過去問解説

問題

問7

トランザクションが、データベースに対する更新処理を完全に行うか、全く処理しなかったかのように取り消すか、のどちらかの結果になることを保証する特性はどれか。

  • 一貫性(consistency)
  • 原子性(atomicity)
  • 耐久性(durability)
  • 独立性(isolation)

[出典:基本情報技術者試験 令和5年度(科目A) 問7]

正解

正解は「」です。

解説

 正解は「イ」の「原子性(atomicity)」です。原子性とは、トランザクション(データベースにおける一連の処理単位)が持つACID特性の一つで、「すべての処理が完了するか、またはまったく行われないかのどちらか」であることを保証する性質です。つまり、処理の途中で失敗した場合には、それまでに行われたすべての処理がなかったこと(ロールバック)になります。

 たとえば、銀行の振込処理で「口座Aから1万円引き落とす」「口座Bに1万円を入金する」という2つの操作を1つのトランザクションとした場合、途中でシステム障害が発生して片方の処理しか実行されなかったとしたら、大きなトラブルになります。原子性が保証されていれば、途中で障害が起きた際には、最初から何も実行しなかった状態に戻せるため、データの整合性が保たれます。

 このように、原子性はトランザクション処理の信頼性を支える基本的な考え方であり、特に障害対策やバックアップの観点から重要です。その他の選択肢もACID特性の一部ですが、それぞれ別の性質を説明しています。設問の「完全に行うか全く行わないかを保証する」性質としては、原子性が最も適切です。

ア(一貫性 consistency):
 一貫性は、トランザクションの処理前後でデータの整合性が常に保たれることを指しますが、「すべてかゼロか」の性質ではありません。
ウ(耐久性 durability):
 耐久性は、一度完了したトランザクションの結果が、障害が発生しても失われないことを保証する特性です。
エ(独立性 isolation):
 独立性は、複数のトランザクションが並行して実行される場合でも、互いに影響を与えず、個別に処理されることを指します。

スポンサーリンク

難易度

 この問題はACID特性の中でも特に基本的な「原子性」について問うものであり、トランザクションの理解があれば正解しやすい内容です。ただし、他の選択肢もACIDに関連するため、用語の意味を混同していると迷いやすく、初心者にとっては中程度の難易度と言えます。

用語補足

原子性(Atomicity):
トランザクションの処理が「全体成功」か「全体失敗」かのどちらかしかないことを保証する特性です。途中で止まれば、すべてがなかったことになります。

一貫性(Consistency):
データベースの整合性制約が、トランザクション処理の前後で常に満たされることです。正しい状態から正しい状態へと変化することを指します。

トランザクション:
複数の処理を1つのまとまりとして扱い、すべて成功するか、すべて失敗して取り消すかのどちらかで実行される処理単位です。銀行の振込などが例です。

対策

 トランザクションのACID特性(原子性・一貫性・独立性・耐久性)は、データベース分野で頻出の基本知識です。略語に頼らず、それぞれの意味を具体的な操作や例とセットで理解することが、正確な判断力につながります。


タイトルとURLをコピーしました