トランザクションとACID特性の基礎とは?とらんざくしょんとあしっどとくせいのきそ
トランザクションとACID特性の基礎とは、複数の更新をまとめて分割できない1つの単位として扱う仕組みがトランザクションで、原子性・一貫性・独立性・耐久性の4つの性質(ACID特性)を満たすことが求められる。処理の確定をコミット、取消しをロールバックといい、途中で障害が起きても中途半端に反映された状態を残さない。
最終更新:2026-10-06
この語が出る過去問を解く →背景
複数の更新にまたがる処理は、途中で電源やプロセスが落ちると片方だけ反映された矛盾状態を残す。同時に別の処理が走っていれば、互いの途中経過を読んで誤った結果を確定させることもある。この2つを防ぐため、処理のまとまりに始まりと終わりの印を付け、全部反映するか無かったことにするかの二択へ落とす仕組みが用意された。拠点をまたぐ構成ではコミットの合意そのものが通信に依存するため、回線断のときに参加者が待ち続けない設計が要る。
具体例
拠点のDBと本社のDBを2相コミットで同期する構成では、調整役が全参加者へ可否を問い合わせ、全員の合意を得てから確定を指示する。PostgreSQLやOracle Databaseはこの手順を備えるが、第1相の応答待ちで回線が切れると参加者がロックを保持したまま宙づりになるため、タイムアウトと復旧手順を決めておく。
試験での引っ掛け
4つの対応の取り違えが定番。全部やるか全部やらないかが原子性、途中経過が他から見えないのが独立性、確定した結果が障害後も残るのが耐久性、前後で矛盾のない状態が保たれるのが一貫性。特に原子性と一貫性、独立性と耐久性が入れ替えて出題される。ロールバックできるのはコミット前までである点も押さえる。
関連用語
出た過去問
出典:平成28年度 秋期 ネットワークスペシャリスト試験 午前Ⅱ 問23(IPA)
Webサーバ、アプリケーション(AP)サーバ及びDBサーバ各1台で構成されるWebシステムにおいて、次の3種類のタイムアウトを設定した。タイムアウトに設定する時…
正解:③, ①, ②
要点:タイムアウトは外側の処理ほど長く設定する
タイムアウトは、外側の処理ほど長く、内側の処理ほど短く設定する。内側が先にタイムアウトすることで、どの処理で問題が起きたのかを切り分けられるからである。この構成では、Webサーバ→APサーバの呼出しが最も外側、APの処理が中間、その内側のDBトランザクションが最も短くなる。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。