TiDB数据库是什么?

  • 内容
  • 评论
  • 相关

TiDB 是一款结合了传统的关系型数据库和 NoSQL 数据库特性的新型分布式数据库。

TiDB 是基于 Google 公司的 Google Spanner / F1 论文设计的开源分布式数据库,而 Spanner/F1 是 Google 公司研发的可扩展的、多版本、全球分布式、可同步复制的数据库。

TiDB 是第一个把数据分布在全球范围内的系统,并且支持外部一致性的分布式事务。因此,TiDB 在设计时也追求无限的水平扩展,具备强一致性和高可用性,支持分布式事务的处理。

同时,TiDE 的目标是为在线交易处理(OnlineTransactional Processing, OLTP)和在线分析处理(Online Analytical Processing, OLAP)场景提供一站式的解决方案,支持MySQL数据库的数据轻松地向 TiDB 迁移,包括分库、分表后的 MySQL 集群也可通过工具进行实时迁移。

TiDB 架构

TiDB 具有无限水平扩展和高可用性的特点,通过简单地增加新节点即可实现计算和存储能力的扩展,轻松地应对高并发、海量数据的应用场景。

TiDB 的整体架构参考 Google Spanner/F1 的设计,也分为 TiDB 和 TiKV 上下两层。

TiDB 对应的是Google F1,是一层无状态的 SQL 层,负责与客户端交互,对客户端体现的是 MySQL 网络协议,且客户端需要通过一个本地负载均衡器将 SQL 请求转发到本地或最近的数据中心中的 TiDB 服务器。

TiDB 服务器负责解析用户的 SQL 语句,生成分布式的查询计划,并翻译成底层 Key-Value 操作发送给 TiKV,而 TiKV 则是真正存储数据的地方,对应的是 Google Spanner,是一个分布式 Key-Value 数据库,支持弹性水平扩展、 自动的灾难恢复和故障转移,以及 ACID 跨行事务。

另外,TiDB 架构采用 PD 集群来管理整个分布式数据库,PD 服务器在 TiKV 节点之间以 Region 作为单位进行调度,将部分数据迁移到新添加的节点上,完成集群调度和负载均衡。

TiDB 的集群架构如下图所示。

本文标题:TiDB数据库是什么?

本文地址:http://www.hosteonscn.com/7473.html

评论

0条评论

发表评论

邮箱地址不会被公开。 必填项已用*标注