TiDB

TiDB
软件
软件描述
TiDB 是一个开源的 NewSQL 数据库,支持混合事务和分析处理(HTAP)工作负载。它与 MySQL 兼容,能够提供横向扩展性、强一致性和高可用性。
官方网站
访问软件的官方网站了解更多信息
www.pingcap.com
什么是 TiDB?
TiDB 是一个开源的 NewSQL 数据库,支持混合事务分析处理(HTAP)工作负载。它与 MySQL 兼容,能够提供横向扩展能力、强一致性以及高可用性。TiDB 的初始设计灵感来源于谷歌的 Spanner 和 F1 论文。
主要特性
易于横向扩展
TiDB 的架构设计将计算与存储分离,可根据需要在线扩展或缩减计算或存储能力。该扩展过程对应用程序的运维人员完全透明。
金融级高可用性
数据以多个副本形式存储,采用多 Raft 协议获取事务日志。只有当数据成功写入多数副本时,事务才能提交。这确保了当少数副本出现故障时,系统仍能保持强一致性和高可用性。用户可根据需要配置副本的地理位置和数量,以满足不同级别的灾难恢复需求。
实时 HTAP
TiDB 提供两种存储引擎:TiKV,一种基于行的存储引擎,以及 TiFlash,一种基于列的存储引擎。TiFlash 采用多 Raft Learner 协议,实时从 TiKV 复制数据,确保 TiKV 行存储引擎与 TiFlash 列存储引擎之间数据的一致性。根据需要,TiKV 和 TiFlash 可部署在不同机器上,以解决 HTAP 资源隔离问题。
云原生分布式数据库
TiDB 是专为云环境设计的分布式数据库,提供在云平台上的灵活扩展性、可靠性和安全性。用户可根据工作负载的变化弹性扩展 TiDB。在 TiDB 中,每条数据至少有 3 个副本,可调度至不同云可用区,以应对整个数据中心的故障。TiDB Operator 可帮助在 Kubernetes 上管理 TiDB 并自动化 TiDB 集群的运维任务,使 TiDB 更容易部署在任何提供托管 Kubernetes 服务的云平台上。TiDB Cloud 是一个全托管的 TiDB 服务,是解锁 TiDB 云上全部功能最简单、最经济、最可靠的途径,用户仅需几下点击即可部署和运行 TiDB 集群。
兼容 MySQL 5.7 协议和 MySQL 生态系统
TiDB 兼容 MySQL 5.7 协议、MySQL 的常见功能以及整个 MySQL 生态系统。在迁移应用程序到 TiDB 时,大多数情况下无需修改任何代码,或仅需少量代码修改。此外,TiDB 提供一系列数据迁移工具,帮助用户轻松将应用数据迁移到 TiDB。