Date de sortie
June 26, 2024
Auteur
Bertrand Fabre Aujourd’hui, je vous explique ce que sont les propriétés ACID d’une base de données.
Pour qu’une base de données soit considérée comme ACID il faut que son modèle de transactions (opération dans une base) respecte 4 propriétés :
1️⃣ Atomicité
2️⃣ Cohérence
3️⃣ Isolation
4️⃣ Durabilité
Je vais vous expliquer en détail chaque propriété.
Atomicité
L’Atomicité c’est lorsque le système est en train de réaliser une opération, une transaction, dans une base de données et s’il y a une erreur lors de cette opération, le système revient à son état d’origine avant le début de cette opération.
💡
Par exemple, lorsqu’un client fait un achat, au moment du paiement, il y a la génération du ticket dans les bases ainsi que la diminution du stock pour les produits achetés. Mais il ne devrait pas être possible de diminuer le stock sans un achat (bien sûr il y a bien des cas pour lesquels cela pourrait se produire mais c’est pour imager).
Cohérence
On parle de Cohérence pour une transaction si cette dernière transforme la base de données d’un état valide à un autre état valide.
💡
Pour illustrer cette propriété, imaginez qu’une des règles dans votre banque soit, qu’il n’est pas possible d’avoir un solde négatif sur un compte épargne. Lors d’un virement de votre compte épargne vers votre compte courant il faudra donc vérifier que le compte épargne possède suffisamment de fond avant de réaliser l’opération.
Isolation
La propriété d’Isolation c’est pour garantir que chaque transaction est isolée de autres concurrentes.
💡
Par exemple, lors d’une vente d’un produit unique ou du dernier produit en stock limité (une seule production par exemple), si 2 personnes tentent d’acheter ce produit en même temps, chacun doit voit l’état de la base de données avant que l’autre transaction ne soi terminée afin d’éviter les conflits.
Durabilité
La dernière des propriétés ACID est la Durabilité. Cette propriété assure que lors qu’une transaction est terminée, ses modifications sont permanentes même en cas de défaillance du système.
💡
Par exemple, une fois une somme d’argent transférée d’un compte d’une banque au compte d’une autre banque, le transfert reste effectué et ne disparaîtra pas même en cas de panne du système.
Merci de votre lecture !