ACID は、データベースのトランザクションが守るべき4つの特性を表す頭文字です。
信頼性の高い処理を保証するための基本概念です。
ACIDの4つの特性
-
A – Atomicity(原子性)
- トランザクション内の処理はすべて実行されるか、まったく実行されないかのどちらか。
- 例:銀行で「AからBへ1万円送金」する場合、Aの口座から引き落としとBの口座への入金は両方成功するか、両方キャンセルされる。
-
C – Consistency(一貫性)
- トランザクション前後で、データは整合性ルールを常に満たす必要がある。
- 例:口座残高がマイナスにならない、制約(ユニーク・外部キーなど)を破らない。
-
I – Isolation(分離性)
- 複数トランザクションを同時に実行しても、互いに影響しないように見える。
- 例:同じ口座から同時にお金を引き出そうとしても、処理が混ざらず順序通りに結果が反映される。
-
D – Durability(永続性)
- トランザクションが完了(コミット)したら、その結果は障害が起きても失われない。
- 例:停電やシステム障害が発生しても、処理結果はストレージに確実に保存されている。
💡 簡単に言うと
ACIDは「失敗しても壊れず・ルールを守り・他と干渉せず・消えない」トランザクションの4条件です。