关系型数据库、NoSQL、NewSQL 选型比对

|----------|--------------------------------------------------|----------------------------------------|------------------------------------------|
| 维度 | 关系型数据库(MySQL/PostgreSQL/Oracle) | NoSQL 数据库(MongoDB/Redis/Cassandra) | NewSQL 数据库(TiDB/CockroachDB/Spanner) |
| 核心定位 | 结构化数据、强事务、复杂关联查询 | 非结构化 / 半结构化数据、高吞吐、灵活扩展 | 兼顾 RDBMS 的强一致性 + NoSQL 的水平扩展 |
| 数据模型 | 固定表结构(Schema)、支持 JOIN | 灵活 Schema(文档 / 键值 / 列族 / 图)、弱 JOIN | 兼容 SQL 表结构,支持分布式 JOIN |
| 一致性 | 强一致性(ACID 严格支持) | 最终一致性为主(CAP 取舍偏向 AP) | 强一致性(分布式 ACID,支持 Serializable 隔离级别) |
| 扩展性 | 垂直扩展为主(升级硬件),水平扩展需分库分表(Sharding-JDBC/MyCat),复杂度高 | 天然水平扩展(集群扩容简单),扩容无感知 | 原生分布式架构,水平扩展透明,扩容不影响业务 |
| 查询能力 | 支持复杂 SQL(JOIN / 子查询 / 事务),OLTP/OLAP 均能覆盖(需优化) | 支持简单查询,复杂查询需上层计算框架(如 Spark) | 兼容标准 SQL,支持分布式事务和复杂查询 |
| 并发能力 | 单机并发高(MySQL 单机 TPS 可达 10 万 +),但海量并发需分库分表 | 超高并发读写(Redis 单机 QPS 可达百万),适合高吞吐场景 | 分布式并发(TiDB 集群 TPS 可达百万),支持高并发事务 |
| 适用场景 | 结构化数据、强事务、复杂关联(订单 / 支付 / 用户系统) | 非结构化数据、高并发读写、灵活扩展(日志 / 缓存 / 物联网) | 海量结构化数据、强事务、高并发(互联网核心业务 / 金融) |
| 优劣势 | 优势:强一致性、成熟稳定、生态完善 | 优势:灵活扩展、高吞吐、低延迟 | 优势:分布式强一致、透明扩展、兼容 SQL |
| 优劣势 | 劣势:水平扩展复杂,海量数据性能下降 | 劣势:弱事务、查询能力有限,跨节点事务难支持 | 劣势:部署运维复杂,部分场景性能略低于专类数据库 |

相关推荐
廿一夏6 小时前
MySql存储引擎与索引
数据库·sql·mysql
lzhdim8 小时前
SQL 入门 15:SQL 事务:从 ACID 到四种常见的并发问题
数据库·sql
瀚高PG实验室8 小时前
瀚高企业版V9.1.1在pg_restore还原备份文件时提示extract函数语法问题
数据库·瀚高数据库
TDengine (老段)8 小时前
TDengine Tag 设计哲学与 Schema 变更机制
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
YOU OU9 小时前
Spring IoC&DI
java·数据库·spring
Muscleheng10 小时前
Navicat连接postgresql时出现‘datlastsysoid does not exist‘报错
数据库·postgresql
罗超驿11 小时前
18.事务的隔离性和隔离级别:MySQL面试高频考点全解析
数据库·mysql·面试
jran-11 小时前
Redis 命令
数据库·redis·缓存
小江的记录本12 小时前
【Java基础】Java 8-21新特性:JDK21 LTS:虚拟线程、模式匹配switch、结构化并发、序列集合(附《思维导图》+《面试高频考点清单》)
java·数据库·python·mysql·spring·面试·maven
June`12 小时前
多线程redis下如何解决aof重写和rdb持久化的数据一致性问题
数据库·redis·缓存