一、理想型的数据库应该具备的特点
1.强一致性和高可用;
2.高吞吐、高并发、低延迟;
3.标准SQL、支持 ACID 事务;
4.大数据生态友好;
5.有水平扩张能力,并且尽量做到不侵入业务;
二、数据库架构选型
三、TiDB与MySQL对比
四、TiDB 和 MySQL 兼容策略
可参考:
https://docs.pingcap.com/zh/tidb/stable/mysql-compatibility
截至 4.0 版本,TiDB 与 MySQL 的区别总结:
五、对于海量数据及大表的解决方案
1.MySQL需要分库分表,业务研发和 DBA 一起配合且略显低效地解决此问题;
2.TiDB单表几乎可以理解为无限大的(业界已经存在 100 亿以上的表)。
六、数据库集群高可用
1.MySQL需手动调研部署高可用集群,且不同高可用方案有不同的维护方式;
2.TiDB自带高可用架构,自动容灾。
七、MySQL分库分表 VS TiDB
九、总结
TiDB 设计的目标就是针对 MySQL 单台容量限制而被迫做的分库分表的场景,或者需要强一致性和完整分布式事务的场景。TiDB的优势是通过尽量下推到存储节点进行并行计算。对于小表(比如千万级以下),不适合 TiDB,因为数据量少,Region 有限,发挥不了并行的优势。