TiDB分布式数据库架构与核心原理

作者:禅与计算机程序设计艺术

1.简介

TiDB 是 PingCAP 公司 2017 年开源的分布式 HTAP(Hybrid Transactional/Analytical Processing)数据库产品,其目标是在强一致性、高性能和易用性之间找到平衡点。TiDB 的特点是融合了传统的 RDBMS 和 NoSQL 的最佳特性,具备水平扩展能力、高可用特性、强一致性和实时 HTAP 查询功能等优秀特性。本文从整体架构、集群设计、核心组件、事务模型、存储机制等方面对 TiDB 分布式数据库系统的架构进行全面剖析。

2.概览

2.1 整体架构

上图是 TiDB 的整体架构。

整体架构分成三个主要模块:Server 层、Client 层和存储层。其中 Server 层和 Client 层分别对应 PD (Placement Driver)和 TiDB 两个组件,存储层则是承载所有数据及相关元信息的 MySQL 兼容存储引擎。PD 通过选举的方式在多个节点间分配数据位置,并且通过 etcd 或其他服务发现机制自动感知各个节点故障并做出调度决策;TiDB 通过 SQL Parser 解析客户端提交的 SQL 请求,将其转化为键值对形式的命令请求,并通过查询优化器生成相应的执行计划;然后将请求发送给指定的 TiKV 节点处理,并最终返回结果给客户端。

2.2

你可能感兴趣的:(Python实战,深度学习实战,自然语言处理,人工智能,语言模型,编程实践,开发语言,架构设计)