"); //-->
本文分享自天翼云开发者社区《TiDB体系架构》,作者:x****n

如图所示,TiDB体系中三大组成部分:PD、TiDB Server、TiKV
1.PD:负责产生全局的TSO时间、控制Region在TIkv中的分布、产生全局事务ID、还有其他ID。
2.TiDB:没有数据落地,接收客户端sql语句,对sql语句进行解析和编译,最终形成执行计划。DDL语句和基于MVCC的老版本数据的回收,也是TiDB Server操作。
3.TiKV:数据以键值队存储在TiKV中,主要负责数据持久化、MVCC、Coprocessor、事务以及自身副本的高可用和强一致性(由Muti-raft实现)。
4.TiFlash:列式存储引擎,主要由扩展的raft共识算法与Tikv进行数据同步,实现负载均衡、强一致读取和实时更新,对于OLTP场景这样就实现了对分析型业务和事务型业务进行隔离,对既有oltp又有olap的是有利的。

TiDB Server有六大功能:
1.处理客户端的连接
2.SQL语句的解析和编译
3.关系型数据与KV的转化
4.SQL语句的执行
5.在线DDL的执行
6.垃圾回收

TiKV的五大功能:
1.Tikv最主要的功能就是负责数据的持久化。
2.TIkv内部是选择基于lsm-tree的Rocks DB引擎作为存储引擎,而Rocksdb通过Wal机制保证数据的不丢失。
3.分布式事务支持:Tidb数据库基于percolator事务模型的两阶段提交过程中,每个Tikv会单独分配存储锁的空间,叫CF lock(列簇),这样,配合Tidb server和PD全局TSO授时服务,就实现了去中心化的两阶段提交。支持乐观锁与悲观锁。在5.0之后,实现了两阶段提交中,第二阶段异步提交功能。在oltp中的高并发、小sql场景里,大大降低了写入延迟。
4.MVCC:实现并发控制、隔离级别、分布式事务、数据快速恢复的基础。历史数据会存储一段时间,最后由GC进行回收。
5.Coprocessor:数据的过滤、部分的聚合、求最大最小值等,这些被下推分布式存储节点,可以利用Tikv的cpu能力,多个tikv可以并行的进行计算,由于他们已经过滤了数据,相比不计算上传TiDB server要少,减少了网络的交互成本,TiDB Server的计算成本也相对减少。

PD的五大功能:
1.整个集群TiKV的元数据存储
2.分配全局ID和事务ID
3.生成全局时间戳TSO
4.收集集群信息进行调度
5.提供TiDBit Dashboard服务

TiFlash的四大功能:
1.列式存储提高分析查询效率
2.支持强一致性和实时性
3.业务隔离
4.智能选择
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
全球首款真正的RISC-V架构人工智能笔记本电脑
当主控芯片架构不断变化时, 系统研发团队真正需要什么样的开发平台?
ARM Cortex‑M与RISC‑V:微控制器架构对比
X86架构和PCI体系〕
嵌入式Web Server架构
视频教程:WindowsCE.NET USB驱动开发基础(Level 300)
富士通多模多频2G/3G/LTE收发芯片MB86L12A系统架构框图
Arm遭遇监管危机:FTC针对其技术授权启动反垄断调查
简化48V分布式电源架构(DPA)应用的前端设计方法
嵌入式系统处理器架构讨论
英特尔披露可重配置无线电架构计划
英特尔研发 “统一核心” 架构处理器,招聘信息透露其将突破现有混合架构设计
摩托罗拉将推出MXC架构,重铸移动器件SoC平台
弥合现实差距:面向 1.8Tb/s 芯粒治理的全新架构
从小众架构走向战略基石的RISC‑V
ARM架构
谷歌第八代TPU深度解析:架构细节全揭秘
32位精简指令集架构的AT91M42800A的设计与应用
webMethods完成对网络基础架构软件厂商TME的收购
透视现代IT企业发展新方向
USB 连接器技术深度解析:架构、引脚定义与信号传输
基于nRF24E1的无线点菜系统架构
基于RISC-V实现高可靠性能:为何架构、微架构与编译器必须协同工作
采用间接电流反馈架构的IA
以多重网路架构实现新式再生能源运转参数撷取系统电路图