TiDB整体架构介绍

TiDB架构图如下

创新互联公司客户idc服务中心,提供德阳服务器托管、成都服务器、成都主机托管、成都双线服务器等业务的一站式服务。通过各地的服务中心,我们向成都用户提供优质廉价的产品以及开放、透明、稳定、高性价比的服务,资深网络工程师在机房提供7*24小时标准级技术保障。

TiDB整体架构介绍



TiDB 集群主要分为三个组件:


TiDB Server


TiDB Server 负责接收 SQL 请求,处理 SQL 相关的逻辑,并通过 PD 找到存储计算所需数据的 TiKV 地址, 与 TiKV 交互

获取数据,最终返回结果。 TiDB Server 是无状态的,其本身并不存储数据,只负责计算,可以无限水平扩展, 可以通过

负载均衡组件(如LVS、HAProxy 或 F5)对外提供统一的接入地址。

// 类比MongoDB分片集群中的mongos或者叫router server


PD Server


Placement Driver (简称 PD) 是整个集群的管理模块,其主要工作有三个: 一是存储集群的元信息(某个 Key 存储在哪个 

TiKV 节点); 二是对 TiKV 集群进行调度和负载均衡(如数据的迁移、Raft group leader 的迁移等);三是分配全局唯一

且递增的事务 ID。


PD 是一个集群,需要部署奇数个节点,一般线上推荐至少部署 3 个节点。

//类比MongoDB分片集群中的config server


TiKV Server


TiKV Server 负责存储数据,从外部看 TiKV 是一个分布式的提供事务的 Key-Value 存储引擎。存储数据的基本单位是 

Region, 每个 Region 负责存储一个 Key Range (从 StartKey 到 EndKey 的左闭右开区间)的数据, 每个 TiKV 

节点会负责多个 Region 。TiKV 使用 Raft 协议做复制,保持数据的一致性和容灾。 副本以 Region 为单位进行管理,

不同节点上的多个 Region 构成一个 Raft Group,互为副本。 数据在多个 TiKV 之间的负载均衡由 PD 调度,

这里也是以 Region 为单位进行调度。

//类比MongoDB分片集群中的replica set


分享文章:TiDB整体架构介绍
分享地址:http://scyanting.com/article/jicepj.html