一、数据库种类 SQL NoSQL NewSQL
- SQL的主要问题是它难以扩展,因为它的性能随着数据库的变大而快速下降。 分布式也是有问题,
- NoSQL采取最终一致性原则,而不是所有四个参数在每个事务中保持一致。 这意味着如果在特定时间段内没有特定数据项的更新,则最终对其所有的访问都将返回最后更新的值。系统通常被描述为提供基本保证的原因(基本可用,软状态,最终一致性) — 而不是ACID。虽然这个方案极大地增加了可用时间和伸缩性,它也会导致数据丢失;
- NewSQL是一种相对较新的形式,旨在使用现有的编程语言和以前不可用的技术来结合SQL和NoSQL中最好的部分。 NewSQL目标是将SQL的ACID保证与NoSQL的可扩展性
二、TiDB 简介
TiDB 是一个分布式 NewSQL数据库。它支持水平弹性扩展、ACID 事务、标准 SQL、MySQL 语法和 MySQL 协议,具有数据强一致的高可用特性,是一个不仅适合 OLTP 场景还适合 OLAP 场景的混合数据库,也就是说TiDB适应数据存储。
三、TiDB 架构
- TiDB Server–>TiDB Server 负责接收 SQL 请求,处理 SQL 相关的逻辑