TY - JOUR
T1 - Read atomic transactions with prevention of lost updates
T2 - ROLA and its formal analysis
AU - Liu, Si
AU - Ölveczky, Peter Csaba
AU - Wang, Qi
AU - Gupta, Indranil
AU - Meseguer, José
N1 - Publisher Copyright:
© 2019, British Computer Society.
PY - 2019/11/1
Y1 - 2019/11/1
N2 - Designers of distributed database systems face the choice between stronger consistency guarantees and better performance. A number of applications only require read atomicity (RA) (either all or none of a transaction’s updates are visible to other transactions) and prevention of lost updates (PLU). Existing distributed transaction systems that meet these requirements also provide additional stronger consistency guarantees (such as causal consistency), but this comes at the price of lower performance. In this paper we propose a new distributed transaction protocol, ROLA, that targets application scenarios where only RA and PLU are needed. We formally specify ROLA in Maude. We then perform model checking to analyze both the correctness and the performance of ROLA. For correctness, we use standard model checking to analyze ROLA’s satisfaction of RA and PLU. To analyze performance we: (a) perform statistical model checking to analyze key performance properties; and (b) compare these performance results with those obtained by also modeling and analyzing in Maude the well-known protocols Walter and Jessy that also guarantee RA and PLU. Our statistical model checking results show that ROLA outperforms both Walter and Jessy.
AB - Designers of distributed database systems face the choice between stronger consistency guarantees and better performance. A number of applications only require read atomicity (RA) (either all or none of a transaction’s updates are visible to other transactions) and prevention of lost updates (PLU). Existing distributed transaction systems that meet these requirements also provide additional stronger consistency guarantees (such as causal consistency), but this comes at the price of lower performance. In this paper we propose a new distributed transaction protocol, ROLA, that targets application scenarios where only RA and PLU are needed. We formally specify ROLA in Maude. We then perform model checking to analyze both the correctness and the performance of ROLA. For correctness, we use standard model checking to analyze ROLA’s satisfaction of RA and PLU. To analyze performance we: (a) perform statistical model checking to analyze key performance properties; and (b) compare these performance results with those obtained by also modeling and analyzing in Maude the well-known protocols Walter and Jessy that also guarantee RA and PLU. Our statistical model checking results show that ROLA outperforms both Walter and Jessy.
KW - Consistency models
KW - Distributed database systems
KW - Maude
KW - Performance evaluation
KW - Rewriting logic
KW - Statistical model checking
KW - Transaction protocols
UR - http://www.scopus.com/inward/record.url?scp=85074745332&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85074745332&partnerID=8YFLogxK
U2 - 10.1007/s00165-019-00489-w
DO - 10.1007/s00165-019-00489-w
M3 - Article
AN - SCOPUS:85074745332
SN - 0934-5043
VL - 31
SP - 503
EP - 540
JO - Formal Aspects of Computing
JF - Formal Aspects of Computing
IS - 5
ER -