ACID特性(トランザクション4要件)
データベーストランザクションの信頼性を保証する4つの特性。原子性(Atomicity)・一貫性(Consistency)・独立性(Isolation)・永続性(Durability)の頭文字をとった概念。
ACID特性とは?
ACID特性は、データベーストランザクションの信頼性を保証する4つの特性の頭文字をとった概念です。銀行の送金処理など、データの整合性が絶対的に重要なシステムで必須の要件です。
4つの特性
A: Atomicity(原子性)
トランザクションは「全て成功」か「全て失敗」のどちらかにしかならない。
送金処理(AからBへ1000円)の例:
- 「Aの口座から1000円引く」
- 「Bの口座に1000円足す」 の2処理がセットで実行される。途中で失敗したら両方取り消す(ロールバック)。
C: Consistency(一貫性)
トランザクション前後でデータが定義された整合性制約を満たす。 例:残高が負にならない制約を満たし続ける。
I: Isolation(独立性・隔離性)
並行する複数のトランザクションが互いに干渉しない。 例:2人が同時に残高を確認・更新しても正しい結果になる。
D: Durability(永続性)
コミットされたデータはシステム障害が起きても失われない。 例:電源が落ちても、コミット済みの送金記録は保持される。
ACID vs BASE
| 特性 | ACID | BASE(NoSQL系) |
|---|---|---|
| 整合性 | 強い整合性 | 結果整合性 |
| 可用性 | 低め | 高い |
| スケール | 垂直スケール | 水平スケール |
まとめ
ACID特性はRDBの中核概念です。金融・医療・EC決済などデータ整合性が最優先のシステムでは必須。スケールを優先するWebサービスのキャッシュ層等ではBASEモデルのNoSQLが選ばれます。
関連する用語 (データベース)
全23件を見るIT用語: MySQLとは|世界最多採用のオープンソースリレーショナルデータベース
WordPress・ECサイト・SNSに広く使われるMySQL(MariaDB)の特徴・ストレージエンジン・チューニングを解説。
IT用語: データベース正規化とは|データの重複をなくすテーブル設計の基本
第1〜第3正規形(1NF・2NF・3NF)を使いデータの冗長性を排除するデータベース正規化の手順を解説。
MySQL(マイSQL)
オープンソースのリレーショナルデータベース管理システム。WordPressをはじめ多くのWebアプリに採用され、読み取りパフォーマンスが高く導入が容易なRDBMSの定番。
Redis(リモートディクショナリサーバー)
インメモリ型のキーバリューストア。超高速な読み書きを実現し、キャッシュ・セッション管理・リアルタイム処理に広く使われるOSSデータベース。
データベースマイグレーション
データベースのスキーマ(テーブル構造)変更をバージョン管理し、順序立てて適用する仕組み。Prisma Migrate・Flyway・Liquibaseが代表的なツール。
IT用語: ORM(オブジェクトリレーショナルマッパー)とは|SQLを書かずにDBを操作
プログラミング言語のオブジェクトとDBのテーブルを対応付けるORMの仕組みとN+1問題を解説。