Cassandra文档学习(三:consistency)

一致的读写操作是如何处理的

CAP定理:Consistency:所有节点在同一时间看到的是同样的数据;Availability:确保每个请求收到成功还是失败的回应;Parttition Tolerance:系统无视偶然的消息丢失持续运行;在分布式存储系统中,同时满足所有特性是不可能的,最多能达到3个中的两个,Cassandra允许用户来决定每个请求的CAP特性,在一致性、性能和错误容忍度之间做出选择;
一致性指一行数据的所有备份是否同步和最新。repair 操作可以确保数据的最终一致性。
两个一致性功能为:

  1. Tunable consistency(可协调一致性):通过提供可调节一致性,Cassandra扩展了eventual consistency的概念。针对任何读或写操作,客户端根据对反应时间和数据准确性的要求来决定数据的一致性程度,除此之外,Cassandra也提供了若干built-in repair mechanismsl以确保数据在各备份上保持一致。
    1. 写操作一致性:决定了在向客户端确认写操作成功之前,多少个节点必须被成功写入(commitlog and memtable );
    2. 读操作一致性程度决定了在将结果返回到客户端之前,多少个replicas必须返回结果;
    3. 假设:R=Nodes Read, W=Node Written, N=Replication Factor,Q=QUORUM=N/2+1。
      ANY: 至少成功写入一个节点,即使是一个Hinted Handoff
      ONE: 至少成功写入一个复制节点(replica node)
      QUORUM: 至少成功写入Q个复制节点(Q=N/2+1)
      LOCAL_QUORUM: 至少在coordinator node所在的当前DC成功写入Q个复制节点
      EACH_QUORUM: 在每个DC成功写入Q个复制节点
      ALL: 成功写入集群中的每个复制节点
  2. Linearizable consistency

读写一致性是如何实现的

http://mt.sohu.com/20160818/n464892365.shtml

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值