'Cause I'm Strong Enough: Reasoning about Consistency Choices in Distributed Systems
Résumé
Large-scale distributed systems often rely on replicated databases that allow a programmer to request different data consistency guarantees for different operations, and thereby control their performance. Using such databases is far from trivial: requesting stronger consistency in too many places may hurt performance, and requesting it in too few places may violate correctness. To help programmers in this task, we propose the first proof rule for establishing that a particular choice of consistency guarantees for various operations on a replicated database is enough to ensure the preservation of a given data integrity invariant. Our rule is modular: it allows reasoning about the behaviour of every operation separately under some assumption on the behaviour of other operations. This leads to simple reasoning, which we have automated in an SMT-based tool. We present a nontrivial proof of soundness of our rule and illustrate its use on several examples.
Domaines
Autre [cs.OH]
Fichier principal
CISE-POPL-2016.pdf (764.95 Ko)
Télécharger le fichier
cex1.pdf (26.96 Ko)
Télécharger le fichier
cex2.pdf (27.49 Ko)
Télécharger le fichier
exec.pdf (26.09 Ko)
Télécharger le fichier
exec2.pdf (24.75 Ko)
Télécharger le fichier
exec3.pdf (28.59 Ko)
Télécharger le fichier
exec4.pdf (18.86 Ko)
Télécharger le fichier
logic.pdf (781.19 Ko)
Télécharger le fichier
messages3.pdf (31.2 Ko)
Télécharger le fichier
messages4.pdf (24.84 Ko)
Télécharger le fichier
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Origine | Fichiers produits par l'(les) auteur(s) |
---|