COPS系统:实现因果一致性的键值存储系统
1. COPS系统概述
COPS(Causal+ Consistency in Wide-Area Storage)是一个旨在提供因果+一致性的分布式键值存储系统,其设计目标是在资源和性能开销方面与现有的最终一致性系统相近。该系统主要由两个软件组件构成:
1.1 键值存储
键值存储是COPS的基础构建块,它在标准键值存储的基础上进行了扩展:
1. 关联元数据 :在COPS中,每个键值对关联一个版本号;在COPS - GT中,除版本号外,还关联一个依赖列表(其他键及其对应版本)。
2. 额外操作 :键值存储接口导出了三个额外操作,分别是按版本获取(get by version)、后置写入(put after)和依赖检查(dep check),这些操作支持因果+一致性和获取事务。
3. 多版本存储(COPS - GT) :为了支持获取事务,COPS - GT会保留键值对的旧版本。
1.2 客户端库
客户端库为应用程序提供了两个主要操作:读取(在COPS中使用get,在COPS - GT中使用get trans)和写入(put)。同时,通过客户端库API中的上下文参数来维护客户端当前依赖的状态。
1.3 COPS系统的目标
- 最小化一致性复制开销 :利用因果依赖的图结构,减少一致性复制时对值的依赖检查次数。
- 最小化空间需
超级会员免费看
订阅专栏 解锁全文
1242

被折叠的 条评论
为什么被折叠?



