ACID特性とは
ACID特性とは、トランザクション処理をするシステムの持つべき属性の頭文字です。
トランザクション処理は、データの書き込み・保存など順番が大事にする処理のことです。
お金を送金するとき2重に送金したら嫌ですよね。
- 原子性・不可分性(atomicity) 全て実行されるか、全く実行されないかにしておくことです。トランザクションは完全に実行されるか、まったく実行されないかのどちらかでなければならないという性質です。
- 一貫性・整合性(consistency) 開始時と終了時にデータベースのルールを満たすことです。トランザクションの終了状態にかかわらず、データベースの整合性が保たれなければならないという性質です。
- 独立性・分離性・隔離性(isolation) 処理中は他の操作からは隠蔽されることです。トランザクションを複数同時に実行しても、単独実行の場合と同じ処理結果にならなければないという性質です。
- 永続性・持続性(durability) 処理結果が失われないことです。トランザクションの結果は、障害が発生しても失われてはいけないという性質です。