Tidb
Architecture
01.LSM-Tree与RocksDB
02.TiDB 构架
03.TiDB 架构演进
PD
TiKV
TiFlash
TiProxy
Installation and Deployment
Tidb 敏捷模式部署
Data Migration and Validation
Backup and Recovery
Command-Line Tool
Optimization and Adjustment
如何通过调整`split-region-size`参数来动态优化Region分裂阈值?
本文档使用 MrDoc 发布
-
+
首页
03.TiDB 架构演进
与传统的单机数据库相比,TiDB 具有以下优势: - 纯分布式架构,拥有良好的扩展性,支持弹性的扩缩容 - 支持 SQL,对外暴露 MySQL 的网络协议,并兼容大多数 MySQL 的语法,在大多数场景下可以直接替换 MySQL - 默认支持高可用,在少数副本失效的情况下,数据库本身能够自动进行数据修复和故障转移,对业务透明 - 支持 ACID 事务,对于一些有强一致需求的场景友好,例如:银行转账 - 具有丰富的工具链生态,覆盖数据迁移、同步、备份等多种场景 # TiDB v1 TiDB v1,主核心框架已定,TiDB 由 TiDB Server, TiKVServer, PD Server 三大核心组件构成。 在内核设计上,TiDB 分布式数据库将整体架构拆分成了多个模块,各模块之间互相通信,组成完整的 TiDB 系统。对应的架构图如下:  1. TiDB Server:SQL 层,对外暴露 MySQL 协议的连接 endpoint,负责接受客户端的连接,执行 SQL 解析和优化,最终生成分布式执行计划。TiDB 层本身是无状态的,可以启动多个 TiDB 实例,通过负载均衡组件(如 TiProxy、LVS、HAProxy、ProxySQL 或 F5)对外提供统一的接入地址,客户端的连接可以均匀地分摊在多个 TiDB 实例上以达到负载均衡的效果。TiDB Server 本身并不存储数据,只是解析 SQL,将实际的数据读取请求转发给底层的存储节点 TiKV(或 TiFlash)。 2. PD (Placement Driver) Server:整个 TiDB 集群的元信息管理模块,负责存储每个 TiKV 节点实时的数据分布情况和集群的整体拓扑结构,提供 TiDB Dashboard 管控界面,并为分布式事务分配事务 ID。PD 不仅存储元信息,同时还会根据 TiKV 节点实时上报的数据分布状态,下发数据调度命令给具体的 TiKV 节点,可以说是整个集群的“大脑”。此外,PD 本身也是由至少 3 个节点构成,拥有高可用的能力。建议部署奇数个 PD 节点。 3. 存储节点 - TiKV Server:负责存储数据,从外部看 TiKV 是一个分布式的提供事务的 Key-Value 存储引擎。存储数据的基本单位是 Region,每个 Region 负责存储一个 Key Range(从 StartKey 到 EndKey 的左闭右开区间)的数据,每个 TiKV 节点会负责多个 Region。TiKV 的 API 在 KV 键值对层面提供对分布式事务的原生支持,默认提供了 SI (Snapshot Isolation) 的隔离级别,这也是 TiDB 在 SQL 层面支持分布式事务的核心。TiDB 的 SQL 层做完 SQL 解析后,会将 SQL 的执行计划转换为对 TiKV API 的实际调用。所以,数据都存储在 TiKV 中。另外,TiKV 中的数据都会自动维护多副本(默认为三副本),天然支持高可用和自动故障转移。 - TiFlash:TiFlash 是一类特殊的存储节点。和普通 TiKV 节点不一样的是,在 TiFlash 内部,数据是以列式的形式进行存储,主要的功能是为分析型的场景加速。 # TiDB v2 TiDB v2,整体架构升级,引入 TiSpark,解决用户复杂的 OLAP 需求。  TiSpark 作为 TiDB 中解决用户复杂 OLAP 需求的主要组件,将 Spark SQL 直接运行在 TiDB 存储层上,同时融合 TiKV 分布式集群的优势,并融入大数据社区生态。至此,TiDB 可以通过一套系统,同时支持 OLTP 与 OLAP,免除用户数据同步的烦恼。 # TiDB v3 TiDB v3,整体架构“焕新”,初见 TiFlash。 # TiDB v4 TiDB v4,TiFlash 重要程度提升,下图为 TiDB HTAP 形态架构。 TiCDC 从 v4.0.6 起成为正式功能,可用于生产环境。 # TiDB v6 从 TiDB 6.0.0 开始,版本的生命维护周期重大调整,TiDB 提供两个版本系列: - 长期支持版本(LTS)约每六个月发布一次。 - 开发里程碑版本(DMR)约每两个月发布一次。 在 TiDB v6.1.0 LTS 的文档中,TiDB 整体架构图再次更新,去 TiSpark,正式迎来 TiFlash。 # TiDB v8 目前,TiDB 已来到 v8 版本,整体架构趋于稳定,与 v6 相同。
Seven
2026年3月17日 14:25
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码