课程名称:课程版本(301)+ 3.9.1 Data Replicas(数据复制)
学习时长:10分钟
课程收获:理解数据副本如何通过Raft协议进行数据复制
课程内容:
1.Raft协议
- Raft是一个一致性协议
- Raft重要的属性
A) Leader选举
B) 关系维护
C) 日志的复制 - TiKV使用Raft进行数据复制,每次数据变更都会记录到Raft日志中,通过RAFT日志复制,数据都安全且准确的同步至Raft group中的多个节点。然而,根据RAFT协议,成功写入只要求将数据复制到大多数节点。
2.TiDB中的数据副本
在现有TiKV的4个节点的集群中添加一个新的节点,副本操作过程如下:- TiKV默认是3个副本,首先3个副本会分别存放在已有的4个节点中的3个不同节点中
- 当探知有新的节点加入时,会将部分region同步至新的节点,确保各个节点的region达到一个平衡
- 如果在30分钟内,发现新加入节点始终为加入集群,曾会将数据继续均衡到原及群众的不同节点