原子性とは?げんしせい
原子性とは、トランザクションに含まれる処理が「すべて実行される」か「まったく実行されない」かのどちらかで終わる性質で、ACID特性のA。途中で異常終了すればそれまでの更新はロールバックされ、開始前の状態へ戻る。中間状態のまま確定することを禁じる約束にあたる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
口座間の振替のように、2件以上の更新が揃って初めて意味を持つ処理は業務のいたるところにある。片方だけ反映された状態は、どの業務ルールにも当てはまらない。障害はいつ起きるか選べないため、「途中で落ちない」ことを目指すのではなく「途中で落ちても中間状態を残さない」設計へ切り替えたのがトランザクションである。
具体例
A口座から1万円引いてB口座へ足す処理で、引いた直後にサーバが落ちても、再起動時にログから取り消されて両口座とも元の残高へ戻る。複数のデータベースにまたがる分散環境では、2相コミットで全体の原子性を保つ。
試験での引っ掛け
ACIDの4文字の割当てが定番。途中結果が他から見えないのは隔離性、実行前後で矛盾が無いのは一貫性、コミット後に消えないのは耐久性で、原子性は全か無かだけを指す。ロールバックは原子性を実現する手段であって、原子性そのものではない。
関連用語
出た過去問
問題文で直接問われたものと、解説の中で触れられたものが含まれます。
出典:令和4年度 秋期 応用情報技術者試験 午前 問30(IPA)解説で登場
ACID特性の四つの性質に含まれないものはどれか。
正解:可用性
要点:ACIDは原子性・一貫性・独立性・耐久性の4つ
トランザクションのACID特性は、原子性(Atomicity)、一貫性(Consistency)、独立性・隔離性(Isolation)、耐久性(Durability)の4つです。可用性はシステムが継続して利用できる度合いを表す信頼性の指標で、ACID特性には含まれません。
出典:令和6年度 秋期 応用情報技術者試験 午前 問27(IPA)
2相コミットで分散トランザクションの原子性を保証する場合、ネットワーク障害の発生によって参加者のトランザクションが、コミットすべきか又はロールバックすべきかを判…
正解:調停者のトランザクションが、コミット又はロールバックの決定を参加者に送る直前に障害になった。
要点:2相コミットは決定通知前の調停者障害で参加者が不確定になる
2相コミットでは、参加者が第1相で可否を回答した後、調停者からの最終決定を待つ「不確定(インダウト)」状態になる。この状態のときに調停者が決定を送る直前に障害となると、参加者は自分ではコミットすべきかロールバックすべきか判断できず、資源を保持したままブロックされる。これが2相コミットの弱点として知られる。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。