上文链接
4.PD
4.1 架构
4.2 主要功能
4.3路由功能
4.4 TSO
TSO:由physical time 和logical time(1ms分成好 262144份)
TSO在分配时,如果节点挂掉(假设现在在分配700-703),再选主节点进行分配(703-706),700-703就不会分配了
4.5 调度
信息收集--->生成调度--->执行调度
4.5.1信息收集
4.5.2 生成调度
4.5.2.1 balance
leader:region leader 位置,在哪个TiKV上
Region:三副本,region都在哪个TiKV上
4.5.2.2 HotRegion
热点region,访问频率高,进行平衡,减少热点region
4.5.2.3 集群拓扑
4.5.2.4 缩容
4.5.2.5 故障修复
4.5.2.6 Region Merge
4.5.3 执行调度
4.6 Label与高可用
采用的raft协议,一旦多数节点挂掉,就表示不可用
图中的Region1 和Region2 就是不太合理的,Region3的分配时较为合理的情况
想要指定region'分配可以使用参数Location_lavels,默认使用的是:zone
zone:DC
rack: rack
host:ip
5.SQL执行流程
5.1 DML读![请添加图片描述](https://img-blog.csdnimg.cn/ecfa450f9f1f45b4b6bcd8793711d474.png)
5.2DML写
5.3 DDL流程![请添加图片描述](https://img-blog.csdnimg.cn/0ca31fbebb1c4282ab24b5d5397d8f4f.png)
5.4 Parse And Compile
5.5 读取的执行
5.6 写入的执行
5.7 DDL执行
6.HTAP
6.1 简介
6.2 要求
6.3 TiDB的HTAP
TIFlash作为列存的存储,数据更新也是来自主节点raft 日志的,Tiflash作为raft learner 不参与投票
6.4 MPP
6.5 HTAP场景
7.TiFlash
7.1架构
raft三种角色:leader follower learner 前两种是tikv 后一种是Tifalsh
7.2 主要功能
7.2.1 异步复制
7.2.2 一致性读取
7.2.3 引擎智能选择(可以与TiKV混合使用)
7.2.4 计算加速
8.TiDB 6.0
8.1 新增功能
1.Placement Rules in SQL
2.小表缓存
3. 内存悲观锁
4. TopSQL
5. TIDB Enterprise Manager (Tiem)
8.2 Placement Rules in SQL
8.3 热点小表缓存
8.4 内存悲观锁
悲观锁和内存悲观锁比较
优点:减少事务延时(网络通讯和io)
降低磁盘和网络带宽
降低TiKV节点Cpu消耗
缺点:锁丢失问题(leader挂掉,锁丢失,事务失败)
8.5 Top SQL
8.6 任务
9.TiDB Cloud