【TiDB学习笔记】1.4 The TiDB platform architecture and landscape(TiDB 平台架构和全景图)@ChenYJ

课程名称: 1.4 The TiDB platform architecture and landscape(TiDB 平台架构和全景图)

学习时长:20

课程收获:

课程内容:

计算存储分离架构

TiKV和TiFlash是存储层,TiSpark和TiDB是计算层,分别处理MySQL和SparkSQL。PD与其他层交互,存储元数据,负责SSO分配和数据定位。

TIDB

无状态SQL层。SQL编译之后生成的物理计划下发到TiKV并行执行。

TiKV/TiFlash

存储层,TiKV行式存储,TiFlash列式存储。数据根据范围切分,同个范围数据有多个副本,通过raft同步(强一致,高可用)。TiFlash上的副本固定为raft lenner,最小化TiKV上的事务处理。TIDB优化器选择事务类处理走TiKVa,分析类查询走TiFlash。

PD

相当于TIDB大脑,部署三副本,通过etcd同步数据,保证高可用。

  • 存储集群元数据(region位置,处于哪些TiKV,raft leader是谁)
  • 调度和负载均衡region(调度region到其他TIKV,把raft leader迁移给另一个flower)
  • 分配全局单调递增的事务时间戳

TiSpark

将SparkSQL运行在TiKV上的OLAP解决方案。

工具

  • TiUP:TIDB组件管理工具
  • Lightning:TiDB全量导入工具
  • Dumpling:全量导出工具
  • Fast Backup & Restore(BR):TIDB进行分布式备份和恢复工具,支持全量或单裤单表
  • TiCDC:通过拉取TiKV变更日志实现的TiDB增量更新工具,秒级上西游数据同步