课程名称:1.4 The TiDB platform architecture and landscape(TiDB 平台架构和全景图)
学习时长:
30mins
课程收获:
了解TiDB 的核心组件及生态工具
课程内容:
TiDB核心系统
-
基于时间戳的时序分配功能
-
由PD进行统一分配
TiDB(SQL层)
-
无状态SQL层,客户端可以连接到任意实例
-
全功能SQL层:a. MySQL协议b.CBOc.二级索引d.Online DDL
TiKV/TiFlash(存储层)
-
TiKV:基于行的存储引擎,同一份数据多个副本,副本之前通过Raft协议实现强一致
-
TiFlash:基于列的存储引擎,副本为Raft Learner、 通过优化器选择、事务类的查询走TiKV、 分析类的查询走TiFlash、负载隔离
PD(Placement Driver)
-
存储诸如特定key的Region位置之类的集群元数据
-
在TiV集群中,调度和负载均衡,包括但不限于数据迁移以及Raft group leader转移
-
分配全剧唯一且单调递增的事务ID
TiSpark(SQL层)
-
将SparkSQL运行在TiKV上的OLAP解决方案
-
TiDB+TiSpark=NO ETL
-
直接在同一平台进行OLTP及OLAP,简化系统架构及运维
TiDB生态系统工具
-
TiUP:a. 4.0 新引入工具;b.单机部署、集群部署、组件下载、版本控制及分发; c.简单易用,几个命令行即可成功部署各个组件
-
Lightning,Dumpling:a.Lightning 全量导入工具、支持读取Mydumper的SQL dump或CSV数据源;b.Dumpling 以SQL或CSV格式导出
-
Backup & Restore(BR):a.针对大规模集群;b.分布式的备份和恢复;c.每TiKV实例~150MB/S,备份速度可调;d.支持诸如NFS或S3之类的外部存储;e.多备份方法:Full/DB/Table;f.支持CA/SSL加密认证;
-
Change data capture(CDC)a.TiCDC;b.高可用;c.分布式,可匹配任意TiKV集群规模; d.在TiKV集群间以毫秒级复制KV变化;e.事务恢复;f.ETL负载;