Exploring the design space of highly-available distributed transactions - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2018

Exploring the design space of highly-available distributed transactions

Exploration de l'espace des solutions pour des transactions distribuées à haute disponibilité

Résumé

Today's large-scale cloud services must provide fast response and an "always-on" experience. Failing to do so results in reduced user engagement, which directly impacts revenues. Cloud storage replicates data at multiple sites worldwide. A user connects to her closest site and, in the presence of site failures, she fails over to a healthy one. Each site scatters data across a large number of servers to handle load beyond what a single machine can handle.Transactional isolation hides the complexity of distribution from the application logic, thus reduces development efforts. However, enforcing isolation requires mechanisms that impact latency and availability. This thesis studies how to enforce isolation in a cloud environment without affecting availability and responsiveness. Our first contribution is Cure, a transactional protocol that ensures high level of semantics compatible with availability: Transactional Causal Consistency (TCC), and support for Convergent data types (CRDTs). Experimentally, Cure is as scalable as a weakly-consistent protocol, even though it provides stronger semantics. Transactional protocols like Cure exhibit latency overheads that have impeded their adoption at scale. Our second contribution is to explore how to provide isolation with no extra delays with respect to a non-transactional system. In this quest, we find, quantify and demonstrate a three-way trade-off between read isolation, delay (latency), and data freshness. Motivated by the results of the trade-off we propose two isolation properties: TCC- and PSI-. We create three protocols which exhibit minimal delay. The experimental evaluation of these protocols supports the theoretical results.
Les services Cloud se doivent de fournir des réponses rapides et d’être toujours disponible. Chaque échec entraîne une diminution de l’engagement des utilisateurs, ce qui impacte les revenus. Le stockage du Cloud réplique les données à travers le monde. Une utilisatrice se connecte au réplica le plus proche et en cas de défaillance bascule vers un réplica opérationnel. Chaque site distribue les données sur un grand nombre de serveurs afin de gérer des charges au delà des capacités d’une seule machine. L’isolation transactionnelle cache la difficulté de cette répartition à la logique applicative, réduisant ainsi la complexité du développement. Cependant, appliquer l’isolation requiert des mécanismes qui affectent la latence et la disponibilité. Notre première contribution est Cure, un protocole transactionnel, qui assure des sémantiques de haut niveau compatibles avec la disponibilité: la cohérence causale transactionnelle (TCC) et des types de données convergents (CRDTs). Malgré des sémantiques plus fortes, Cure a prouvé être capable de monter autant en charge que des protocoles à cohérence faible. Les surcoûts de latence liés aux protocoles transactionnels tels que Cure freinent leur adoption. Notre seconde contribution est une étude des mécanismes d’isolation sans délais supplémentaires, comparé à un système non transactionnel. Dans cette partie, nous démontrons un compromis entre l’isolation, les latences, et la fraîcheur des lectures. Justifiés par les résultats de ce compromis, nous proposons deux propriétés d’isolation: TCC- et PSI-, et trois protocoles qui présentent une latence minimale et dont l’évaluation expérimentale valide les résultats théoriques.
Fichier principal
Vignette du fichier
these_Tomsic_Alejandro_2018.pdf (3.32 Mo) Télécharger le fichier
Origine : Version validée par le jury (STAR)
Loading...

Dates et versions

tel-01956321 , version 1 (06-01-2019)
tel-01956321 , version 2 (11-06-2020)

Identifiants

  • HAL Id : tel-01956321 , version 2

Citer

Alejandro Zlatko Tomsic. Exploring the design space of highly-available distributed transactions. Databases [cs.DB]. Sorbonne Université, 2018. English. ⟨NNT : 2018SORUS324⟩. ⟨tel-01956321v2⟩
353 Consultations
529 Téléchargements

Partager

Gmail Facebook X LinkedIn More