【 TiDB 使用环境】生产环境
【 TiDB 版本】5.4.2
很抱歉,对TiKV的具体实现还不是特别了解。
想请教一下,TiKV是否存在损失一致性的边缘条件?
比如在Raft协议中,假如在主节点写入一条日志之后,这条日志同步到从节点之前,主节点挂了,此时从新选主,选主之后,是否存在特定边缘条件造成各节点数据不一致呢?
谢谢!
Raft协议 最基础的一个点,就是半数以上的同意,commit 才算成功(也就是大多数节点都会有这份数据)
所以这个时候,某一个节点挂了,还会有其他的副本可用;
另外副本的 leader 和 节点的 leader 不是一个概念,即是某个节点挂了,多个副本的存在,也是可以重新拉起和同步的
1 个赞
CAP 中 TiDB 遵从 CP,尽可能保证 A