分布式数据库是如何演进的?
回顾分布式数据库的演进历程,我们可以大致概括为三个发展阶段:应用分库分表做垂直拆分、分布式中间件、分布式数据库。每个阶段都呈现出了不同的特点:
应用分库分表做垂直拆分本质上是应用侧的改造,和数据库本身没有太大关系。
在分布式中间件阶段,分布式数据库本质上是由两部分组成的,上层是分布式中间件,底层再搭载开源 MySQL 或 PG 单机内核。这种方式因为使用了比较成熟的内核,所以生态友好、成本较低,比较容易实现,不过缺点也显而易见,比如功能降级、分布式事务处理能力较差,最重要的是,因为使用的是开源产品的内核,数据库会始终受制于开源代码修改、专利、发行方式等很多方面的风险,这种形式显然已经无法满足当前国内金融、政企客户的需求。
到了分布式数据库阶段,主要呈现出两种形态。一种是基于分布式存储实现的分布式数据库,这种形态先有分布式存储,再叠加数据库能力,我们习惯把它称为 “分布式 +”。
这种架构在分布式比较擅长的领域,更容易形成它的技术竞争力。什么是分布式擅长的领域呢?比如说像扩展性、及时的扩展