课程名称:【TiDB 4.0 PCTA 学习笔记】- 1.4 The TiDB platform architecture and landscape(TiDB 4.0 架构概览)
学习时长:
课程收获:TiDB 4.0 架构概览
课程内容:
TiDB Core System
整个TiDB是计算存储分离的架构;
SQL层:
TiDB是无状态的SQL层,客户端可连接任意TiDB实例,兼容MySQL协议功能完善,二级索引支持,在线DDL
存储层:
TiKV:行式存储,适合事务处理
TiFlash:列式存储,适合分析处理
数据根据范围区分,同个数据有多个副本,副本之间通过Raft共识协议头部,保证强一致以及高可用
其中TiFlash中的副本固定为Raft Learner,使得对TiKV上事务处理的影响最小化;
通过TiDB的优化器选择,可以做到让事务类的处理查询走TiKV,分析类的查询走TiFlash,来最大程度的隔离OLTP和OLAP
Placement Driver:PD
TiDB集群的智能大脑,部署三副本,主要负责:
存储集群的元数据
调度和负载均衡
负责分配全局单调递增的事务时间戳,是事务模型正确性所依赖的保证
TiSpark (SQL层)
是直接将SparkSQL直接运行在TiKV上的olap解决方案
从数据集成的角度看TiSpark加TiDB可以让用户无需进行脆弱和难以维护的ETL,直接在同一平台进行事务和分析两种工作,简化系统架构和运维
TiDB Ecosystem Tools
TiUP:
TiDB4.0新引入的组件管理工具,提供单机部署,集群部署,组件下载,版本控制,分发等功能
Lightning:
全量导入工具
读取Mydumper或CSV数据源导出的SQL dump
Dumpling:
全量导出工具,导出格式有SQL和CSV
Fast Backup & Restore(BR)
分布式备份和恢复工具,可备份全量或单库 单表;直接从TiKV存储上入手,把备份恢复任务下分到TiKV上执行,将备份恢复带来的CPU和IO均匀分布在各个TiKV上,备份恢复性能是可以随TiKV节点数而水平扩散的
TiCDC:
TiCDC 是一款通过拉取 TiKV 变更日志实现的 TiDB 增量数据同步工具,具有秒级上下游数据同步,以及将数据恢复到以上游任意天都一致状态的能力。同时提供开放数据协议与多种异构生态系统对接满足用户在大数据场景中对各类数据的应用与分析需求;广泛适用于日志收集,监控数据聚合,在线和离线分析
TiDB整个产品生态全景图
DM:Data Migration 负责MySQL数据迁移
TiDB Operator:是 Kubernetes 上的 TiDB 集群自动运维系统,提供包括部署、升级、扩缩容、备份恢复、配置变更的 TiDB 全生命周期管理。借助 TiDB Operator,TiDB 可以无缝运行在公有云或私有部署的 Kubernetes 集群上。