Qu'est-ce que la cohérence éventuelle?

La cohérence éventuelle est un modèle de programmation dans lequel les programmeurs partent du principe que sur une période suffisamment longue et sans modifications apportées à un système, la version actuelle d'un programme particulier sera distribuée jusqu'à ce que chaque réplique du programme soit cohérente. Le concept de cohérence éventuelle est utilisé dans les méthodes de programmation telles que la réplication optimiste, la mémoire partagée distribuée et les transactions distribuées. En ce qui concerne les bases de données, la cohérence éventuelle est obtenue via un processus en trois étapes. Premièrement, les informations distribuées sont disponibles sur le système. ceci est suivi par un état souple dans lequel différents utilisateurs peuvent toujours travailler avec différentes versions des données; enfin, la cohérence est atteinte et tous les ordinateurs ont accès à des données identiques.

L'un des moyens les plus visibles d'application de la cohérence éventuelle est l'utilisation de mises à jour logicielles distribuées en ligne. Pendant les premières secondes qui suivent la publication d’une mise à jour, personne ne l’aura; pas assez de temps a passé pour que les utilisateurs du logiciel téléchargent et installent la mise à jour. C'est l'état "disponible"; la mise à jour existe, mais n'a pas encore été distribuée. Au fil du temps, à mesure que les utilisateurs téléchargent la mise à jour, certains l’auront et d’autres pas. Cependant, une fois le délai écoulé, tous les utilisateurs du logiciel disposeront de la version la plus récente. C’est la prémisse qui sous-tend l’état de cohérence éventuelle: si le délai est suffisant, toute mise à jour se propage intégralement dans l’ensemble du système.

Alors que le système travaille à la cohérence finale, les conflits sont inévitables. Celles-ci se produisent lorsque la version du programme ou les informations actuellement sur l'ordinateur ne correspondent pas à la "version du modèle" du programme. Les programmes sont généralement mis en place pour reconnaître et gérer ces conflits. Lorsque les fichiers d'un ordinateur spécifique sont plus anciens que la version la plus récente du logiciel ou des données en question, le système invite généralement l'utilisateur à lancer une mise à jour pour résoudre le problème de disparité.

Trois méthodes possibles sont disponibles pour appliquer ces résolutions: réparation en écriture, réparation en lecture et réparation asynchrone. Ces méthodes permettent toutes d’aligner la version du programme ou des données sur le modèle cohérent. La principale différence entre ces facteurs est liée à la façon dont le système chronomètre la réparation. Toutes ces opérations présentent des avantages et des inconvénients.

Lors d'une réparation en écriture, les modifications du code stocké sur l'ordinateur sont effectuées pendant une opération d'écriture, lorsque l'ordinateur écrit déjà quelque chose sur le disque dur du système. Cela corrige l'incohérence, en alignant le programme ou les données sur le modèle, mais ralentit également temporairement l'opération d'écriture d'origine. Pour une réparation en lecture, l'opération corrective se produit pendant un cycle de lecture à partir du disque dur. Ceci, à son tour, ralentit l'opération de lecture. En réparation asynchrone, la réparation a lieu lorsqu'aucune opération de lecture ou d'écriture n'a lieu, ce qui entraîne la consommation de cycles d'inactivité sur la CPU.

DANS D'AUTRES LANGUES

Cet article vous a‑t‑il été utile ? Merci pour les commentaires Merci pour les commentaires

Comment pouvons nous aider? Comment pouvons nous aider?