Having your cake and eating it too: combining strong and eventual consistency

PaPEC '14 Pub Date : 2014-04-13 DOI:10.1145/2596631.2596637
P. Wojciechowski, Konrad Siek
{"title":"Having your cake and eating it too: combining strong and eventual consistency","authors":"P. Wojciechowski, Konrad Siek","doi":"10.1145/2596631.2596637","DOIUrl":null,"url":null,"abstract":"Given the limitations imposed on distributed systems that are necessary to maintain strong consistency guarantees there is a growing interest in relaxed consistency models. Such models are often sufficient for particular applications, but allow more freedom to improve scalability and availability. Eventual consistency is a particularly useful approach, where the correct state spreads throughout the system over time, so that at any point any element of the system may be inconsistent, but all elements will eventually converge upon a consistent state. On the other hand relaxing properties may be unacceptable in the general case: a slightly stale shopping cart is one thing, but inconsistent payment processing is quite another.\n In this paper we try to balance strong and eventual consistency by proposing a general-purpose pessimistic distributed transactional memory that allows eventually consistent transactions to run alongside consistent ones. While the former maintain read-isolation (i.e., read from a consistent snapshot), they do not interfere with the latter's safety properties. The relaxed-consistency transactions are later followed by their consistent counterpart so that the user view and global state eventually agree. Our contribution is to show that we can significantly relax synchronization (to the point of eliminating it completely from eventually consistent transactions) while retaining useful properties, but without imposing additional constraints about system architecture or data operations, common to other relaxed consistency approaches. All this, without affecting those transactions that execute in consistent mode.","PeriodicalId":354287,"journal":{"name":"PaPEC '14","volume":"367 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-04-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"PaPEC '14","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2596631.2596637","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Given the limitations imposed on distributed systems that are necessary to maintain strong consistency guarantees there is a growing interest in relaxed consistency models. Such models are often sufficient for particular applications, but allow more freedom to improve scalability and availability. Eventual consistency is a particularly useful approach, where the correct state spreads throughout the system over time, so that at any point any element of the system may be inconsistent, but all elements will eventually converge upon a consistent state. On the other hand relaxing properties may be unacceptable in the general case: a slightly stale shopping cart is one thing, but inconsistent payment processing is quite another. In this paper we try to balance strong and eventual consistency by proposing a general-purpose pessimistic distributed transactional memory that allows eventually consistent transactions to run alongside consistent ones. While the former maintain read-isolation (i.e., read from a consistent snapshot), they do not interfere with the latter's safety properties. The relaxed-consistency transactions are later followed by their consistent counterpart so that the user view and global state eventually agree. Our contribution is to show that we can significantly relax synchronization (to the point of eliminating it completely from eventually consistent transactions) while retaining useful properties, but without imposing additional constraints about system architecture or data operations, common to other relaxed consistency approaches. All this, without affecting those transactions that execute in consistent mode.
拥有你的蛋糕并吃掉它:结合强烈和最终的一致性
考虑到对分布式系统施加的维护强一致性保证所必需的限制,人们对宽松一致性模型的兴趣越来越大。对于特定的应用程序,这样的模型通常是足够的,但是允许更多的自由来提高可伸缩性和可用性。最终一致性是一种特别有用的方法,在这种方法中,正确的状态随着时间的推移在整个系统中传播,因此在任何一点上,系统的任何元素都可能不一致,但所有元素最终都会收敛到一致的状态。另一方面,在一般情况下,放松属性可能是不可接受的:购物车有点陈旧是一回事,但支付处理不一致是另一回事。在本文中,我们试图通过提出一种通用的悲观分布式事务内存来平衡强一致性和最终一致性,该内存允许最终一致的事务与一致的事务一起运行。虽然前者保持读隔离(即从一致的快照中读取),但它们不会干扰后者的安全属性。放松一致性事务之后会有一致的对应事务,这样用户视图和全局状态最终就会一致。我们的贡献是展示我们可以在保留有用属性的同时显著地放松同步(直至完全从最终一致的事务中消除同步),但不会对系统架构或数据操作施加额外的约束,这与其他放松的一致性方法一样。所有这些都不会影响以一致模式执行的事务。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信