Propriétés garantissant fiabilité des transactions de bases de données.
ACID est l'acronyme des 4 propriétés garantissant la fiabilité des transactions de bases de données, formulé par Theo Härder et Andreas Reuter (1983). Critère fondamental des SGBD relationnels (Postgres, MySQL InnoDB, Oracle, SQL Server).
(1) **Atomicity** — une transaction est all-or-nothing. Si toute opération échoue, all rolled back. Exemple : virement bancaire débite A et crédite B atomiquement.
(2) **Consistency** — transactions amènent DB d'un état valide à un autre état valide (respect constraints, foreign keys, triggers). Si violation, rollback.
(3) **Isolation** — transactions concurrent ne s'interfèrent pas. Plusieurs niveaux : Read Uncommitted (lowest, dirty reads possibles), Read Committed (default Postgres), Repeatable Read (default MySQL InnoDB), Serializable (highest, strictest). Trade-off perf vs strictness.
(4) **Durability** — données committed survivent crashes (WAL — Write-Ahead Log fsync to disk before commit ack).
NoSQL et CAP : nombreux NoSQL (Cassandra, DynamoDB, MongoDB pre-4.0) sacrifient ACID strict pour scalability et availability (BASE — Basically Available, Soft state, Eventual consistency). Modernes NoSQL (MongoDB 4.0+ multi-doc transactions, Spanner, CockroachDB, FoundationDB) supportent ACID distribué via Paxos/Raft consensus. Compétences DP-300, DEA-C01, DP-900.
200+ certifications, 400 000+ questions, examens blancs chronométrés.
Voir le catalogue →