Don't settle for eventual: scalable causal consistency for wide-area storage with COPS

Wyatt Lloyd, M. Freedman, M. Kaminsky, D. Andersen
{"title":"Don't settle for eventual: scalable causal consistency for wide-area storage with COPS","authors":"Wyatt Lloyd, M. Freedman, M. Kaminsky, D. Andersen","doi":"10.1145/2043556.2043593","DOIUrl":null,"url":null,"abstract":"Geo-replicated, distributed data stores that support complex online applications, such as social networks, must provide an \"always-on\" experience where operations always complete with low latency. Today's systems often sacrifice strong consistency to achieve these goals, exposing inconsistencies to their clients and necessitating complex application logic. In this paper, we identify and define a consistency model---causal consistency with convergent conflict handling, or causal+---that is the strongest achieved under these constraints. We present the design and implementation of COPS, a key-value store that delivers this consistency model across the wide-area. A key contribution of COPS is its scalability, which can enforce causal dependencies between keys stored across an entire cluster, rather than a single server like previous systems. The central approach in COPS is tracking and explicitly checking whether causal dependencies between keys are satisfied in the local cluster before exposing writes. Further, in COPS-GT, we introduce get transactions in order to obtain a consistent view of multiple keys without locking or blocking. Our evaluation shows that COPS completes operations in less than a millisecond, provides throughput similar to previous systems when using one server per cluster, and scales well as we increase the number of servers in each cluster. It also shows that COPS-GT provides similar latency, throughput, and scaling to COPS for common workloads.","PeriodicalId":20672,"journal":{"name":"Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles","volume":"9 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2011-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"662","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2043556.2043593","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 662

Abstract

Geo-replicated, distributed data stores that support complex online applications, such as social networks, must provide an "always-on" experience where operations always complete with low latency. Today's systems often sacrifice strong consistency to achieve these goals, exposing inconsistencies to their clients and necessitating complex application logic. In this paper, we identify and define a consistency model---causal consistency with convergent conflict handling, or causal+---that is the strongest achieved under these constraints. We present the design and implementation of COPS, a key-value store that delivers this consistency model across the wide-area. A key contribution of COPS is its scalability, which can enforce causal dependencies between keys stored across an entire cluster, rather than a single server like previous systems. The central approach in COPS is tracking and explicitly checking whether causal dependencies between keys are satisfied in the local cluster before exposing writes. Further, in COPS-GT, we introduce get transactions in order to obtain a consistent view of multiple keys without locking or blocking. Our evaluation shows that COPS completes operations in less than a millisecond, provides throughput similar to previous systems when using one server per cluster, and scales well as we increase the number of servers in each cluster. It also shows that COPS-GT provides similar latency, throughput, and scaling to COPS for common workloads.
不要满足于使用cop的广域存储的最终可伸缩因果一致性
支持复杂在线应用程序(如社交网络)的地理复制、分布式数据存储必须提供“始终在线”的体验,在这种体验中,操作总是以低延迟完成。今天的系统经常牺牲强一致性来实现这些目标,将不一致性暴露给客户,并需要复杂的应用程序逻辑。在本文中,我们识别并定义了一个一致性模型——具有收敛冲突处理的因果一致性,或因果+——这是在这些约束下实现的最强模型。我们介绍了COPS的设计和实现,这是一个键值存储,可以在广域范围内提供这种一致性模型。COPS的一个关键贡献是它的可伸缩性,它可以强制存储在整个集群(而不是像以前的系统那样存储在单个服务器上)的密钥之间的因果依赖关系。cop的核心方法是在公开写操作之前,跟踪并显式检查本地集群中键之间的因果关系是否得到满足。此外,在cop - gt中,我们引入了get事务,以便在不锁定或阻塞的情况下获得多个键的一致视图。我们的评估表明,COPS在不到一毫秒的时间内完成操作,在每个集群使用一台服务器时提供与以前系统类似的吞吐量,并且随着每个集群中服务器数量的增加而扩展良好。它还表明,cop - gt为普通工作负载提供了与cop相似的延迟、吞吐量和可伸缩性。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约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学术官方微信