分布式 CAP 定理是关于分布式系统设计中的三个重要属性的不可兼得性的定理。这三个属性分别是:一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)。
CAP 定理指出,在一个分布式系统中,一致性、可用性和分区容错性这三个属性不可能同时满足。也就是说,在面对网络分区时,我们只能在一致性和可用性之间进行权衡选择。
根据分布式系统设计中的异步通信模型和 FLP 结果(FLP 结果是一个涉及异步系统的定理,表明在异步通信模型中,不存在一致性算法,可以保证在任意节点故障的情况下都能达到一致性)可以推导出 CAP 定理。
TiDB 是一种基于高性能键值(KV)磁盘数据库开发的 SQL 兼容分布式数据库,技术原理如下:
OceanBase 是一种基于数据分区的分布式数据库,和传统的分库分表/中间件技术比较类似,可以看做一种比较完善的高性能分库分表解决方案,技术原理如下:
TiDB 和 OceanBase 都是分布式关系型数据库,但是由于其底层采用了截然不同的两种架构,所以它们适用于不同的场景:
TiDB 适合以下场景:
OceanBase 适合以下场景:
📙 高并发的哲学原理 《Philosophical Principles of High Concurrency》
Copyright © 2023 吕文翰