Database · 技术方向 · 下一代云原生数据库详解

数据库内核月报 - 2020 / 05

Database · 技术方向 · 下一代云原生数据库详解

云原生数据库风起云涌

近十年是数据库市场发展最快的十年,根据Gartner的数据,目前数据库市场营收已经达到整个软件市场的18.4%,而云数据库贡献了其中的68%。 特别是近几年,云原生数据库的理念为市场和各大云厂商所认可,各大厂商纷纷在自研云原生数据库领域持续发力,未来的云数据库市场是自研云原生数据库之间的竞争。

云原生数据库和托管/自建数据库最大的区别就是:云原生数据库是面向独立资源的云化,其CPU、内存、存储等均可实现独立的弹性,利用大型云厂商的海量资源池,最大化其资源利用率,降低成本,同时支持独立扩展特定资源,满足多种用户不断变化的业务需求,实现完全的Serverless; 而托管数据库还是局限于传统的服务器架构,各项资源等比率的限制在一个范围内,其弹性范围,资源利用率都受到较大的限制,无法充分利用云的红利。

当前的云原生数据库现状

目前主流云原生数据库刚走出了第一步,即实现了存储和计算的分离,并基于此实现了一写多读集群架构.

存储和计算分离:

一写多读架构:

云原生数据库领域,AWS的Aurora是先行者.国内目前PolarDB是一枝独秀,其他厂商正在跟进中:

下一代云原生数据库架构

当前基于共享存储一写多读的云原生架构虽然解决了存储的弹性问题和读扩展问题,极大的提升了云原生数据库的弹性和扩展能力,但是依然存在2个比较大的瓶颈点,即内存弹性单点写入问题。因此下一代云原生数据库将在如下两个方向实现突破:

基于CPU和内存分离的分布式共享内存池

基于分布式共享内存池的多点可写技术

因此云原生数据库下一代架构必然是基于分布式共享内存池的多点可写架构。目前AWS也看到了这一个方向,也推出了Aurora Multi-Master产品,但是该产品直接基于共享存储实现多点可写,因此多个写节点间数据/事务信息同步效率低下,导致只能采用乐观冲突机制,同时冲突场景下性能非常低下。

PolarDB团队在发布基于共享存储的一写多读PolarDB的时候,就开始着手研发下一代基于分布式共享内存池的多点可写架构。目前已经在CPU和内存分离,多节点缓存一致性,多节点事务控制等多个关键技术点实现突破。

多写架构一直以来都被认为是数据库技术皇冠上的明珠,目前国内外核心银行/电信/政府等行业仍然被Oracle/IBM等的多写架构所统治着。因多写架构存在较大的技术挑战,因此无论是开源数据库还是新兴的基于分区的分布式NewSQL都绕开了单行多写这个数据库技术高峰。这一次PolarDB团队正在登顶数据库技术高峰的路上,这也是突破数据库核心市场的机会。希望有志之士可以加入我们,共攀技术高峰,共创历史!

欢迎对 数据库,云原生技术,分布式存储,分布式架构,高性能网络,新硬件 感兴趣的同学,一起交流技术,共同进步!

微信: zhangyq_zju 邮箱: yingqiang.zyq@alibaba-inc.com