Modèle de base de données ACID
Le modèle ACID de conception de bases de données est un concept important dans la théorie des bases de données. Il définit quatre objectifs que les systèmes de gestion de bases de données doivent atteindre : atomicité, cohérence, isolation et durabilité. Une base de données relationnelle qui ne répond à aucun de ces quatre objectifs ne peut être considérée comme fiable. Au lieu de cela, les bases de données présentant ces caractéristiques sont considérées comme conformes à ACID.
acide, définition
Chacune des quatre propriétés ACID suit des critères bien définis :
- L’atomicité dicte que les modifications de la base de données doivent suivre une règle du tout ou rien.On dit que chaque transaction est atomeSi une partie de la transaction échoue, la totalité de la transaction échoue. Il est essentiel que le système de gestion de base de données conserve la nature atomique des transactions malgré toute défaillance du SGBD, du système d’exploitation ou du matériel.
- La cohérence signifie que seules les données valides sont écrites dans la base de données. Si la transaction exécutée enfreint les règles de cohérence de la base de données, la totalité de la transaction est annulée et la base de données est restaurée dans un état conforme à ces règles. D’autre part, si une transaction s’exécute avec succès, elle fait passer la base de données d’un état conforme aux règles à un autre état également conforme aux règles.
- L’isolation nécessite que plusieurs transactions se produisant en même temps n’affectent pas l’exécution de l’autre. Par exemple, si Joe émet une transaction vers la base de données en même temps que Marie émet une transaction différente, les deux transactions doivent fonctionner sur la base de données de manière isolée. La base de données doit exécuter la transaction de Joe avant d’exécuter la transaction de Mary, et vice versa. Cela empêche la transaction de Joe de lire les données intermédiaires qui ont été produites dans le cadre de la transaction de Mary, qui ne seraient finalement pas validées dans la base de données. La propriété d’isolation ne garantit pas quelle transaction s’exécute en premier – c’est juste que les transactions n’interfèrent pas les unes avec les autres.
- La durabilité garantit que toute transaction validée dans la base de données n’est pas perdue. La durabilité est assurée par l’utilisation de sauvegardes de bases de données et de journaux de transactions qui permettent de récupérer les transactions validées malgré toute défaillance logicielle ou matérielle ultérieure.
Comment ACID fonctionne en pratique
Les administrateurs de base de données utilisent diverses stratégies pour appliquer ACID.
Une stratégie pour imposer l’atomicité et la durabilité est journal d’écriture anticipée, où tous les détails de la transaction sont d’abord écrits dans un journal contenant des informations de rétablissement et d’annulation. Cette approche garantit qu’en cas de défaillance de la base de données, la base de données peut examiner le journal et comparer son contenu avec l’état de la base de données.
Une autre approche utilisée pour traiter l’atomicité et la persistance est pagination d’ombre, Lorsque des données doivent être modifiées, des pages fantômes y sont créées. Les mises à jour des requêtes sont écrites sur des pages fantômes au lieu de données réelles dans la base de données. Modifiez la base de données uniquement lorsque l’édition est terminée.
Une autre stratégie s’appelle engagement en deux phases Protocole, particulièrement utile dans les systèmes de bases de données distribuées. Le protocole divise les demandes de modification de données en deux phases : la phase de demande de validation et la phase de validation. Lors de la phase de demande, tous les SGBD du réseau concernés par la transaction doivent confirmer qu’ils ont bien reçu la transaction et qu’ils sont capables de l’exécuter. Une fois les accusés de réception reçus de tous les SGBD concernés, la phase de validation est terminée, où les données sont modifiées.
Le modèle ACID n’est pas le seul moyen de gérer les données. Le modèle BASE est adapté aux données non structurées.
Merci de nous en informer!
Dites-nous pourquoi !
D’autres détails ne sont pas assez difficiles à comprendre