TiDB VS MySQL—摘自京东神灯—张宾

  • Post author:
  • Post category:mysql



一、理想型的数据库应该具备的特点


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 有限,发挥不了并行的优势。