【TiDB 4.0 PCTA 学习笔记】- 1.6 Read and Write data in the TiDB database platform(TiDB 中的读写流程)@2班+唐少

课程名称:课程版本(101)+TiDB 中的读写流程

学习时长:10分钟

课程收获:TiDB SQL处理流程、TiDB读写请求流程

课程内容:

1、TiDB架构

2、TiKV:

  • Raft协议保证事务一致性
  • MVCC保证多版本控制
  • MVCC之上事务层实现事务相关

3、PD组件

  • 分配分布式事务ID
  • 实现Region与Leader的调度
  • 通过ETCD实现高可用

4、TiDB中SQL处理流程
SQL->AST抽象->生成执行计划->执行计划优化->根据优化计划将请求发送到对应节点

  • 客户端连接到TiDB并发送请求
  • TiDB从请求中获取SQL
  • 解析SQL并生成优化计划
  • TiDB从PD中获取统计信息
  • 获取表元数据信息并将执行发送到节点
  • TiDB通过gRPC与TiKV进行交互通信
  • TiKV接收到请求,查询数据并返回给TiDB
  • TiDB接收到请求并处理结果
  • TiDB将结果返回给客户端

5、TiDB的写请求:写请求中会涉及到二阶段提交和分布式事务有关的内容

  • 客户端连接到TiDB并发送请求
  • TiDB从请求中获取SQL
  • 解析SQL并生成优化计划
  • TiDB从PD中获取统计信息
  • 获取表元数据信息并将执行发送到节点
  • TiDB会生成commit请求
  • TiKV使用two-phase commit提交来commit数据
  • TiKV发送请求到TiDB
  • TiDB再将数据返回给客户端

学习过程中参考的其他资料