Identifiant pérenne de la notice : 206847386
Notice de type
Notice de regroupement
Note publique d'information : Dans les systèmes répartis à très grande échelle, les critères de cohérence forts
comme la cohérence séquentielle et la linéarisabilité sont souvent trop coûteux, voire
impossibles à obtenir. Dans cette thèse, nous nous posons la question de la spécification
des objets que l’on peut tout de même obtenir. Nous soutenons qu’il est toujours possible
de séparer leur spécification en deux facettes : un type de données abstrait qui spécifie
l’aspect fonctionnel des opérations et un critère de cohérence faible qui décrit la
qualité de service garantie par l’objet dans son environnement réparti. Nous illustrons
ces concepts par une mise en oeuvre dans le langage D : les types de données abstraits
sont les classes du programme et les critères de cohérence sont choisis dans une liste
fournie par la bibliothèque CODS. Nous dressons une carte de l’espace des critères
faibles organisée autour de trois familles de critères primaires (localité d’état,
convergence et validité) et trois familles de critères secondaires (cohérence d’écritures,
cohérence pipeline et sérialisabilité). Chaque critère secondaire renforce deux critères
primaires, mais les trois critères primaires ne peuvent pas être implémentés ensembles
dans les systèmes considérés. Nous étudions également l’effet de la causalité sur
ces familles.
Note publique d'information : In large scale distributed systems, strong consistency criteria like sequential consistency
and linearizability are often very expensive or even unachievable. This thesis investigates
the best ways to specify the objects that are still possible to implement in these
systems. We assert that it is still possible to separate their specification in two
complementary facets: an abstract data type that specifies the functional aspect of
the operations and a weak consistency criterion that describes the level of quality
of service ensured by the object in its distributed environment. We illustrate these
concepts by an implementation in the D programming language: abstract data types are
described by classes in the program and consistency criteria are taken from a list
in the CODS library. We also draw up a map of the space of weak consistency criteria,
organised around three families of primary criteria (state locality, eventual consistency
and validity) and three families of secondary criteria (update consistency, pipelined
consistency and serializability). Each secondary criterion strenghtens two primary
criteria, but the three criteria can not be implemented together in considered systems.
We also study the effects of causality on these families.