在调研 MySQL、PostgreSQL、MongoDB、CockroachDB、YugabyteDB 等数据库后,
最终选择 TiDB 的关键原因是它在分布式一致性、水平扩展性、MySQL 兼容性、
以及高可用性方面达到了最平衡的状态。
我们不需要改业务代码,却获得了分布式数据库的能力;
不需要做分库分表,也能线性扩容;
同时 TiDB 的 HTAP 能力让我们对实时分析场景也有足够覆盖。
另外:
社区很丰富, 也是重要的一点哟
在调研 MySQL、PostgreSQL、MongoDB、CockroachDB、YugabyteDB 等数据库后,
最终选择 TiDB 的关键原因是它在分布式一致性、水平扩展性、MySQL 兼容性、
以及高可用性方面达到了最平衡的状态。
我们不需要改业务代码,却获得了分布式数据库的能力;
不需要做分库分表,也能线性扩容;
同时 TiDB 的 HTAP 能力让我们对实时分析场景也有足够覆盖。
另外:
社区很丰富, 也是重要的一点哟
1、你们在数据库选型的时候看了哪些数据库?
pg
2、最后为什么选择了 TiDB ?原因是什么?
兼容mysql
1. 你们在数据库选型的时候调研了哪些数据库?
我们之前一直把 MySQL 作为核心业务数据库,选型调研时重点看了 PostgreSQL、MongoDB、CockroachDB 这几款主流数据库,还简单了解了 OceanBase 的适配情况。
2. 最后为什么选择了 TiDB ?原因是什么?你觉得 TiDB 对比其他你调研的数据库,优势在哪里?
最终决定迁移到 TiDB,核心是它刚好解决了我们用 MySQL 时的刚需痛点 —— 随着业务增长,数据量突破千万级后,MySQL 分库分表的运维成本越来越高,扩容时要停服调整,跨表关联查询也特别慢,而且分布式事务支持得不够完善。对比其他调研的数据库,TiDB 的优势很贴合我们的实际需求:它完全兼容 MySQL 的协议和语法,应用代码几乎不用改,迁移过程没影响线上业务;水平扩展能力是原生的,想加节点直接扩容,不用再折腾分库分表;强一致性分布式事务和 HTAP 混合负载能力,既能扛住高并发的 OLTP 业务,又能支持实时数据分析,不用再单独搭数仓。反观其他选项,PostgreSQL 的分布式扩展需要额外插件,运维复杂度没降低;MongoDB 在事务一致性和复杂查询上不如 TiDB 适配我们的业务场景;CockroachDB 的中文文档和本地化技术支持没那么及时,遇到问题排查效率低,所以 TiDB 成了我们兼顾兼容性、扩展性和实用性的最优选择。
在数据库选型过程中,我们通常会结合业务场景(如数据规模、并发量、事务需求、分析需求等)调研多类数据库,涵盖传统关系型、分布式关系型、NoSQL、NewSQL 等方向,具体包括:
我们的业务场景存在几个核心诉求:亿级以上数据规模、高并发读写(TPS 数万级)、需强一致性事务、同时有实时分析需求(如实时报表、复杂聚合查询),且希望避免手动分库分表的运维负担。结合这些需求,TiDB 的适配性最突出:
无需手动分库分表,支持无缝水平扩展 业务数据量每年增长 50%+,传统 MySQL 需手动分库分表(如 ShardingSphere),运维成本高且扩容易出问题。TiDB 通过自动分片(Region)和 PD 调度,新增节点即可自动均衡数据,无需业务改造。
强一致性分布式事务,兼容 MySQL 生态 业务涉及跨表 / 跨库事务(如订单 - 库存 - 支付链路),需 ACID 保证。TiDB 基于 Percolator 模型实现分布式事务,且兼容 MySQL 协议和 SQL 语法,应用迁移成本极低(几乎无需修改代码)。
HTAP 融合架构,兼顾事务与分析 传统架构需 “事务库(MySQL)+ 分析库(ClickHouse)” 双集群,数据同步延迟高(分钟级)。TiDB 通过 TiKV(事务引擎)+TiFlash(列式存储分析引擎),同一集群可同时支持高并发事务和实时分析(延迟毫秒级),简化架构。
高可用与容灾能力 基于 Raft 协议实现多副本(默认 3 副本),单节点故障自动切换,无数据丢失,且支持跨机房部署,满足核心业务的高可用要求。
| 对比维度 | TiDB vs 传统 MySQL/PostgreSQL | TiDB vs CockroachDB/Spanner | TiDB vs NoSQL(MongoDB/Cassandra) |
|---|---|---|---|
| 水平扩展 | 自动分片,无需手动分库分表 | 同样支持扩展,但 TiDB 的调度更灵活 | 支持扩展,但事务和 SQL 兼容性弱 |
| 事务能力 | 支持分布式强事务(MySQL 仅单库事务) | 事务模型类似,但 TiDB 更适配国内场景 | 弱事务(多文档 / 跨节点事务不支持) |
| 分析能力 | 原生支持 HTAP(TiFlash) | 分析能力较弱(无列式存储引擎) | 复杂查询和 SQL 支持差 |
| 兼容性 | 高度兼容 MySQL 协议和语法 | 兼容 PostgreSQL(迁移成本略高) | 无 SQL 兼容,需重构应用 |
| 成本与生态 | 开源免费,社区活跃,工具链完善 | Spanner 依赖云生态,成本高 | 运维复杂,需额外工具补全功能 |
综上,TiDB 在 “分布式扩展、强事务、HTAP 融合、MySQL 兼容性” 四个核心维度的平衡,完美匹配了我们的业务需求,最终成为选型的最优解。
1.你们在数据库选型的时候看了哪些数据库?
其他分布式数据库(如 PostgreSQL 分布式衍生版)以及云原生分布式数据库(如 TiDB)。
2. 最后为什么选择了 TiDB ?原因是什么?
一是存算分离架构可平衡多租户数据隔离与跨租户分析效率,减少同步成本;二是结合新版本特性,有潜力实现敏感数据治理闭环,适配自动化需求;三是资源管控能力能避免治理任务与业务查询抢资源,保障稳定性。
敢于尝试.
mysql
TiDB、OceanBase
你们在数据库选型的时候调研了哪些数据库?
TD、gauss、Tidb
最后为什么选择了 TiDB ?原因是什么?你觉得 TiDB 对比其他你调研的数据库,优势在哪里?
兼容mysql。
你们在数据库选型的时候调研了哪些数据库?
MySQL, PostgreSQL, Oracle,TiDB
最后为什么选择了 TiDB ?原因是什么?你觉得 TiDB 对比其他你调研的数据库,优势在哪里?
中间件国产化的趋势,TiDB 兼容 MySQL 协议,现有应用代码无需大幅修改即可迁移;同时提供完善的监控工具(TiDB Dashboard)和国内本土化技术支持,运维门槛低于海外分布式数据库。
你们在数据库选型的时候调研了哪些数据库?
mysql , cloud rds , postgresql , tidb
最后为什么选择了 TiDB ?原因是什么?你觉得 TiDB 对比其他你调研的数据库,优势在哪里?
你们在数据库选型的时候调研了哪些数据库?
mysql、金仓、HBase、OceanBase
最后为什么选择了 TiDB ?原因是什么?你觉得 TiDB 对比其他你调研的数据库,优势在哪里?
(1)业务需要支持超大规模数据存储与高并发访问,TiDB 的分布式架构可无缝扩容,无需拆分业务表。
(2)现有系统基于 MySQL 开发,TiDB 完全兼容 MySQL 协议与语法,迁移成本极低。
(3)核心业务要求强数据一致性,TiDB 支持 ACID 事务,能满足金融级或核心业务的数据可靠性需求。
1、你们在数据库选型的时候看了哪些数据库?
mysql、pg 、oracle
2、最后为什么选择了 TiDB ?原因是什么?
兼容mysql协议、分布式部署,动态扩缩容,支持列式存储和AP查询
1.你们在数据库选型的时候调研了哪些数据库?
tidb,OceanBase,PostgreSQL,金仓。
2.最后为什么选择了 TiDB ?原因是什么?你觉得 TiDB 对比其他你调研的数据库,优势在哪里?
国产化替代需求,兼容MySQL,平滑平替MYsql,生态工具齐全,社区活跃等。
1 分布式架构:支持水平扩展,解决了单机 MySQL 的容量瓶颈2 MySQL 兼容性:应用层几乎不需要修改代码,迁移成本低3 强一致性:支持 ACID 事务,保证数据一致性4 高可用性:多副本机制,自动故障转移5 实时分析:支持 OLTP 和 OLAP 混合负载