ACID
ACID est un ensemble de propriétés garantissant que les transactions en bases de données sont traitées de manière fiable. Les quatre principes de l'ACID sont Atomicité, Cohérence, Isolation et Durabilité.
De quoi parle-t-on ?
ACID est un acronyme qui se réfère à quatre propriétés fondamentales qui assurent la fiabilité des transactions dans une base de données : Atomicité, Cohérence, Isolation et Durabilité. Ces principes sont essentiels pour garantir que les systèmes de gestion de bases de données (SGBD) fonctionnent correctement, en particulier dans les environnements où des transactions complexes sont effectuées.
L'origine du terme ACID remonte aux années 1970, lorsque les chercheurs en informatique ont commencé à formaliser les concepts de transactions en bases de données. À cette époque, le besoin croissant de systèmes capables de gérer des transactions simultanées dans des environnements multi-utilisateurs a conduit à l'élaboration de ces principes. Chaque propriété joue un rôle spécifique dans la gestion des données.
1. **Atomicité** : Cette propriété garantit que chaque transaction est traitée comme une unité indivisible. Si une partie de la transaction échoue, toute la transaction échoue et les modifications apportées sont annulées. Par exemple, si vous transférez de l'argent d'un compte à un autre, soit les deux opérations (débit et crédit) sont effectuées, soit aucune d'entre elles ne l'est.
2. **Cohérence** : La cohérence assure que la base de données passe d'un état valide à un autre état valide après une transaction. Cela signifie que les règles et contraintes de la base de données doivent être respectées, garantissant ainsi l'intégrité des données. Par exemple, si une transaction implique la mise à jour d'une table qui dépend d'une contrainte d'intégrité, la base de données doit rester cohérente après cette mise à jour.
3. **Isolation** : Cette propriété garantit que les transactions concurrentes n'affectent pas les résultats des autres transactions. Chaque transaction doit être exécutée comme si elle était la seule transaction dans le système, même si d'autres transactions sont en cours d'exécution. Cela permet d'éviter des problèmes tels que les lectures fantômes ou les écritures perdues.
4. **Durabilité** : Une fois qu'une transaction a été validée et que les modifications ont été enregistrées, ces modifications doivent persister, même en cas de panne système. Cela signifie que les données validées sont stockées de manière permanente et ne peuvent pas être perdues.