NewSQL
为什么需要 NewSQL
- NoSQL 不能完全取代 RDBMS
- 单机RDBMS 无法满足性能需求
- 使用“单机RDBMS + 中间件”方式,在中间件层很难解决分布式事务、高可用问题
NewSQL 定义
- 针对OLTP的读写,提供与NOSQL相同的可扩展性和性能,同时能支持满足ACID特性的事务
- 即保持NoSQL的高可扩展和高性能,并且保持关系模型
NewSQL 设计架构
- 可以基于全新的数据库平台,也可以基于现有的SQL引擎优化。
- 无共享存储(MPP架构)是比较常见的架构
- 基于多副本实现高可用和容灾
- 分布式查询
- 数据Sharding机制
- 通过2PC,Paxos/Raft等协议实现数据一致
代表产品
- Google Spanner
- Cockroach DB
- TiDB
- OceanBase
- X-DB
相关文章