Nosql Cassandra分区容差在多数据中心环境中的工作原理

Nosql Cassandra分区容差在多数据中心环境中的工作原理,nosql,cassandra,cloud,cluster-computing,Nosql,Cassandra,Cloud,Cluster Computing,假设Cassandra集群配置是以下面的方式设置的 两个节点(1,2)位于数据中心-A 数据中心B中有两个节点(3,4) 环(1,2,3,4)是跨位于不同位置的数据中心生成的 假设数据中心A和数据中心B之间的连接断开 在这种情况下,系统将如何运行?由于1和2位于单个数据中心,他们认为3和4已关闭。同样的,3号和4号会治疗1号和2号。我可能完全错了 如果“写入”请求被发送到“A”,它将处理该请求,当A和B之间的连接重新建立时,它将在节点之间同步数据 这就是为什么Cassandra中的复制非常好,如

假设Cassandra集群配置是以下面的方式设置的

  • 两个节点(1,2)位于数据中心-A
  • 数据中心B中有两个节点(3,4)
  • 环(1,2,3,4)是跨位于不同位置的数据中心生成的

    假设数据中心A和数据中心B之间的连接断开


    在这种情况下,系统将如何运行?由于1和2位于单个数据中心,他们认为3和4已关闭。同样的,3号和4号会治疗1号和2号。我可能完全错了

    如果“写入”请求被发送到“A”,它将处理该请求,当A和B之间的连接重新建立时,它将在节点之间同步数据


    这就是为什么Cassandra中的复制非常好,如果一个节点关闭,它将与其余节点一起完成此任务。

    根据复制因子/snitch/一致性,您的写入操作将失败,因为它无法达到所需的一致性,或者在连接恢复时成功并修复其自身,因为协调器将保留提示并稍后将其发送给其他DC。如果连接中断时间过长,则这些连接将断开,您需要运行修复

    所以。。客户端必须处理过时的数据,直到两个数据中心之间的连接恢复为止。卡桑德拉支持最终的一致性。