in

ACID : définition de ce terme en informatique et son utilité

ACID en informatique

Dans le contexte de l’informatique, ACID signifie Atomicité, Cohérence, Isolation et Durabilité. Il s’agit en fait d’un ensemble de principes directeurs qui garantissent la fiabilité des traitements des transactions de base de données.

Une transaction de base de données indique toute opération effectuée dans une base de données, telle que la création d’un nouvel enregistrement ou la mise à jour des données dans un.

Il faut bien soigner les modifications apportées dans une base de données. Ce qui permet de garantir que les données qu’elle contient ne soient pas corrompues. L’application des propriétés ACID à chaque modification d’une base de données constitue le meilleur moyen de maintenir l’exactitude et la fiabilité d’une base de données.

Atomicité

Dans le contexte des bases de données, l’atomicité signifie :

  •  S’engager sur l’intégralité de la transaction en cours
  •  N’avoir aucune transaction du tout

Essentiellement, une transaction atomique garantit que toute validation à effectuer termine l’opération entière avec succès. Ou, en cas de perte de connexion au milieu d’une opération, la base de données revient à son état antérieur au lancement de la validation.

L’atomicité est également importante pour empêcher les plantages. Si un plantage se produit lors d’une transaction sans atomicité, il est difficile de savoir exactement à quelle étape du processus se trouvait avant que la transaction ne soit interrompue. En utilisant l’atomicité, l’entreprise s’assure que l’intégralité de la transaction se termine avec succès. Elle s’assure qu’aucune d’entre elles ne l’a été.

Cohérence

Dans ACID, la cohérence fait référence au maintien des contraintes d’intégrité des données.

Une transaction cohérente ne violera effectivement pas les contraintes d’intégrité imposées aux données par les règles de la base de données. L’application de la cohérence garantit l’abandon et la restauration du processus à leur état légal précédent. Notamment si une base de données entre dans un état illégal.

Une autre façon d’assurer la cohérence au sein d’une base de données tout au long de chaque transaction consiste à appliquer également des contraintes déclaratives placées sur la base de données.

Isolation

Les transactions isolées sont considérées comme « sérialisables ». Ce qui signifie donc que chaque transaction se produit dans un ordre distinct sans qu’aucune transaction ne se produise en tandem.

Toutes les lectures ou écritures effectuées sur la base de données ne seront pas affectées par d’autres lectures et écritures de transactions distinctes se produisant sur la même base de données. Un ordre global est créé avec chaque transaction en file d’attente. Le but étant de s’assurer que les transactions se terminent dans leur intégralité avant qu’une autre ne commence.

L’isolement se fait grâce à l’utilisation d’une échelle mobile de permissivité. Une échelle qui va effectivement entre ce qu’on appelle les transactions optimistes et les transactions pessimistes :

  • Un schéma de transaction optimiste suppose que d’autres transactions se termineront sans lire ou écrire deux fois au même endroit. Avec le schéma optimiste, les deux transactions seront abandonnées et réessayées dans le cas d’une transaction frappant deux fois le même endroit.
  • Un schéma de transaction pessimiste offre moins de liberté. Il bloquera les ressources en supposant que les transactions auront un impact sur les autres. Cela se traduit par moins d’abandons et de nouvelles tentatives. Toutefois, cela signifie également que les transactions doivent d’attendre leur tour plus souvent par rapport à l’approche de transaction optimiste.

Durabilité

Le dernier aspect de l’approche ACID de la gestion des bases de données est la durabilité.

La durabilité garantit que les modifications apportées à la base de données (transactions) qui sont validées avec succès survivront de manière permanente. Ce, même en cas de défaillance du système. Cela garantit donc que les données de la base de données ne seront pas corrompues par :

  • Pannes de service
  • Plantages
  • Autres cas d’échec

 L’utilisation de journaux des modifications permet d’obtenir une plus grande durabilité. 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.